一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

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

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
}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲成人福利 | 特黄特色大片免费视频大全 | 男人捅女人漫画 | 草久社区| 好吊色网站| 男人狂躁女人gif动态图 | 亚洲黄色高清 | 嫩草影院地址一地址二 | 日本天堂影院在线播放 | 国产在线极品 | 国产日韩欧美不卡www | 91精品国产高清久久久久 | 国色天香社区视频在线观看免费完整版 | 国产不卡视频 | 白丝校花被扒开双腿喷水小说 | 久久精品动漫网一区二区 | 午夜办公室在线观看高清电影 | 色综合网天天综合色中文男男 | 黄+色+性+人免费 | 日本天堂视频在线观看 | 亚洲国产成人久久精品hezyo | 国产一区二区三区四卡 | ckinese中国男同gay男男 | 91尤物在线视频 | 国产精品天天在线 | 91人成网站色www | 国内自拍2020 | heyzo1754北岛玲在线视频 | 无人区在线观看免费视频国语 | 含羞草传媒每天免费一次破解 | 成人毛片高清视频观看 | bdsm中国精品调教 | 北岛玲亚洲一区在线观看 | 九九久久国产精品大片 | 奇米影视亚洲狠狠色 | 日本免费在线 | 国产免费又粗又猛又爽视频国产 | 久久青草免费91线频观看站街 | 毛片应用 | 12345国产精品高清在线 | 国产欧美日韩精品高清二区综合区 |