国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - 解讀ASP.NET 5 & MVC6系列教程(17):MVC中的其他新特性

解讀ASP.NET 5 & MVC6系列教程(17):MVC中的其他新特性

2020-01-16 15:40湯姆大叔 ASP.NET教程

這篇文章主要介紹了ASP.NET 5中全局導入、獲取IP相關信息、文件上傳等其他新特性,需要的朋友可以參考下

(GlobalImport全局導入功能)

默認新建立的MVC程序中,在Views目錄下,新增加了一個_GlobalImport.cshtml文件和_ViewStart.cshtml平級,該文件的功能類似于之前Views目錄下的web.config文件,之前我們在該文件中經常設置全局導入的命名空間,以避免在每個view文件中重復使用@using xx.xx語句。
默認的示例如下:

?
1
2
3
@using BookStore
@using Microsoft.Framework.OptionsModel
@addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"

上述代碼表示,引用BookStoreMicrosoft.Framework.OptionsModel命名空間,以及Microsoft.AspNet.Mvc.TagHelpers程序集下的所有命名空間。

關于addTagHelper功能,我們已經在TagHelper中講解過了

注意,在本例中,我們只引用了BookStore命名空間,并沒有引用BookStore.Controllers命名空間,所以我們在任何視圖中,都無法訪問HomeController類(也不能以Controllers.HomeController的形式進行訪問),希望微軟以后能加以改進。

獲取IP相關信息

要獲取用戶訪問者的IP地址相關信息,可以利用依賴注入,獲取IHttpConnectionFeature的實例,從該實例上可以獲取IP地址的相關信息,實例如下:

?
1
2
3
4
5
6
7
8
var connection1 = Request.HttpContext.GetFeature<IHttpConnectionFeature>();
var connection2 = Context.GetFeature<IHttpConnectionFeature>();
 
var isLocal = connection1.IsLocal;         //是否本地IP
var localIpAddress = connection1.LocalIpAddress;  //本地IP地址
var localPort = connection1.LocalPort;       //本地IP端口
var remoteIpAddress = connection1.RemoteIpAddress; //遠程IP地址
var remotePort = connection1.RemotePort;      //本地IP端口

類似地,你也可以通過IHttpRequestFeatureIHttpResponseFeatureIHttpClientCertificateFeatureIWebSocketAcceptContext等接口,獲取相關的實例,從而使用該實例上的特性,上述接口都在命名空間Microsoft.AspNet.HttpFeature的下面。

文件上傳

MVC6在文件上傳方面,給了新的改進處理,舉例如下:

?
1
2
3
4
<form method="post" enctype="multipart/form-data">
  <input type="file" name="files" id="files" multiple />
<input type="submit" value="submit" />
</form>

我們在前端頁面定義上述上傳表單,在接收可以使用MVC6中的新文件類型IFormFile,實例如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[HttpPost]
public async Task<IActionResult> Index(IList<IFormFile> files)
{
  foreach (var file in files)
  {
    var fileName = ContentDispositionHeaderValue
      .Parse(file.ContentDisposition)
      .FileName
      .Trim('"');// beta3版本的bug,FileName返回的字符串包含雙引號,如"fileName.ext"
    if (fileName.EndsWith(".txt"))// 只保存txt文件
    {
      var filePath = _hostingEnvironment.ApplicationBasePath + "\\wwwroot\\"+ fileName;
      await file.SaveAsAsync(filePath);
    }
  }
  return RedirectToAction("Index");// PRG
}

 

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 黄色电影在线免费观看 | 一色屋精品久久久久久久久久 | 亚洲免费视频观看 | 国产激情午夜 | 亚洲国产中文字幕 | 日日摸天天做天天添天天欢 | 亚洲乱码国产乱码精品精的特点 | www久| 另类久久 | 欧美成年黄网站色视频 | 国产亚洲人成网站在线观看 | 亚洲a网 | 久久久网页 | 欧美一区二区三区四区不卡 | 山岸逢花在线观看无删减 | 国产成人网 | 日韩不卡一区二区三区 | 国产精品精品 | 国产乱码一区二区三区在线观看 | 国产精品一区二区三区免费视频 | 欧美视频精品在线观看 | 国产欧美日韩一区 | 四季久久免费一区二区三区四区 | 26uuu国产电影一区二区 | 日本在线中文 | 一级片免费在线观看视频 | 久久av一区 | 91精品国产一区二区三区香蕉 | 日韩视频一区二区三区 | 成人免费在线电影 | 四房婷婷 | 直接看av的网站 | 久久久91视频 | 欧美一区二区三区视频在线观看 | 亚洲成人免费网站 | 精品国产一区二区三区忘忧草 | 国产精品剧情一区二区三区 | 88888888国产一区二区 | 亚洲精品乱码久久久久久蜜桃91 | 91中文字幕网 | 亚洲在线一区 |