最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決ASP.NET Core Mvc文件上傳限制問題實例

 更新時間:2016年11月30日 08:42:29   作者:YOYOFx  
本篇文章主要介紹了解決ASP.NET Core Mvc文件上傳限制問題,具有一定的參考價值,有需要的可以了解一下。

一、簡介

在ASP.NET Core MVC中,文件上傳的最大上傳文件默認(rèn)為20MB,如果我們想上傳一些比較大的文件,就不知道怎么去設(shè)置了,沒有了Web.Config我們應(yīng)該如何下手呢?

二、設(shè)置上傳文件大小

1.應(yīng)用程序級別設(shè)置

我們需要在 ConfigureServices方法中添加如下代碼,設(shè)置文件上傳的大小限制為60 MB。

public void ConfigureServices(IServiceCollection services)
{
  servicesConfigure<FormOptions>(options =>
  {
    optionsMultipartBodyLengthLimit = 60000000;
  });
}

2.Action級別設(shè)置

除了上面對全局進(jìn)行設(shè)置外,我們也可以通過自定義Filter的方式,對單個Action進(jìn)行控制,F(xiàn)ilter代碼如下:

 [AttributeUsage(AttributeTargetsClass | AttributeTargetsMethod, AllowMultiple = false, Inherited = true)]
  public class RequestFormSizeLimitAttribute : Attribute, IAuthorizationFilter, IOrderedFilter
  {
    private readonly FormOptions _formOptions;

    public RequestFormSizeLimitAttribute(int valueCountLimit)
    {
      _formOptions = new FormOptions()
      {
        ValueCountLimit = valueCountLimit
      };
    }

    public int Order { get; set; }

    public void OnAuthorization(AuthorizationFilterContext context)
    {
      var features = contextHttpContextFeatures;
      var formFeature = featuresGet<IFormFeature>();

      if (formFeature == null || formFeatureForm == null)
      {
        // Request form has not been read yet, so set the limits
        featuresSet<IFormFeature>(new FormFeature(contextHttpContextRequest, _formOptions));
      }
    }
  }

因為ASP.NET Core MVC中,與之前版本不同的是具體功能被封裝在了各種Feature(特征)中,HttpContext上下文只是能各個特征進(jìn)行管理的容器。這個Filter中就只將Action攔截,對HttpContext中的FormFeature(負(fù)責(zé)表單提交功能)重新進(jìn)行設(shè)置,從而達(dá)到限制具體Action上傳文件大小的目的。

三、結(jié)語

本來感覺像是發(fā)現(xiàn)了一個文件上傳的BUG,已經(jīng)確認(rèn)在1.0.1版本中已經(jīng)進(jìn)行了修復(fù)。在1.0.0版本中,如果Action沒有設(shè)置一個IFromFile作為參數(shù),那么Request.From.Files將不能訪問并且報出異常。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • .NET Core 處理 WebAPI JSON 返回?zé)┤说膎ull為空

    .NET Core 處理 WebAPI JSON 返回?zé)┤说膎ull為空

    這篇文章主要介紹了.NET Core 處理 WebAPI JSON 返回?zé)┤说膎ull為空,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • .NET?如何使用?OpenTelemetry?metrics?監(jiān)控應(yīng)用程序指標(biāo)

    .NET?如何使用?OpenTelemetry?metrics?監(jiān)控應(yīng)用程序指標(biāo)

    這篇文章主要介紹了.NET?使用?OpenTelemetry?metrics?監(jiān)控應(yīng)用程序指標(biāo),通過代碼演示了如何通過 OpenTelemetry 把 Metrics 的數(shù)據(jù)發(fā)送到 Prometheus 里進(jìn)行查詢與展示,然后又演示了自定義相關(guān)指標(biāo)來滿足業(yè)務(wù)數(shù)據(jù)指標(biāo)的監(jiān)控,需要的朋友可以參考下
    2024-06-06
  • C#中使用SQLite數(shù)據(jù)庫的方法介紹

    C#中使用SQLite數(shù)據(jù)庫的方法介紹

    SQLite是一個開源的輕量級的桌面型數(shù)據(jù)庫,它將幾乎所有數(shù)據(jù)庫要素(包括定義、表、索引和數(shù)據(jù)本身)都保存在一個單一的文件中。SQLite用C編寫實現(xiàn),它在內(nèi)存消耗、文件體積、操作性能、簡單性方面都有不錯的表現(xiàn)
    2012-01-01
  • 在asp.net中操作sql server數(shù)據(jù)庫的一些小技巧

    在asp.net中操作sql server數(shù)據(jù)庫的一些小技巧

    在asp.net中操作sql server數(shù)據(jù)庫的一些小技巧...
    2006-09-09
  • .Net Core中使用Grpc的方法

    .Net Core中使用Grpc的方法

    這篇文章主要介紹了.Net Core中使用Grpc的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 淺談ASP.NETCore統(tǒng)一處理404錯誤都有哪些方式

    淺談ASP.NETCore統(tǒng)一處理404錯誤都有哪些方式

    本文主要介紹了ASP.NETCore統(tǒng)一處理404錯誤都有哪些方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • .NET中的repeater簡介及分頁效果

    .NET中的repeater簡介及分頁效果

    Repeater控件是一個數(shù)據(jù)綁定容器控件,它能夠生成各個項的列表,并可以使用模板定義網(wǎng)頁上各個項的布局。本文對此進(jìn)行詳細(xì)介紹,下面跟著小編一起來看下吧
    2017-02-02
  • ASP.NET Core中的Razor頁面實現(xiàn)路由功能

    ASP.NET Core中的Razor頁面實現(xiàn)路由功能

    本文詳細(xì)講解了ASP.NET Core中的Razor頁面實現(xiàn)路由功能的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • Ajax Control Toolkit BalloonPopup的使用實例及效果

    Ajax Control Toolkit BalloonPopup的使用實例及效果

    Ajax Control Toolkit 工具包的簡介及獲取方式等,BalloonPopup 控件可以顯示一個彈出層,里面可以包含很多內(nèi)容。
    2013-02-02
  • .NET?Core配置連接字符串和獲取數(shù)據(jù)庫上下文實例

    .NET?Core配置連接字符串和獲取數(shù)據(jù)庫上下文實例

    這篇文章介紹了.NET?Core配置連接字符串和獲取數(shù)據(jù)庫上下文實例的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01

最新評論

九寨沟县| 阿瓦提县| 太湖县| 六枝特区| 蓬溪县| 从化市| 晋江市| 施甸县| 华阴市| 大余县| 邻水| 高雄县| 凯里市| 龙游县| 莱阳市| 仙桃市| 明星| 大城县| 和龙市| 靖江市| 杭州市| 乌拉特前旗| 沧源| 无锡市| 武强县| 手机| 安国市| 成安县| 泾源县| 白沙| 永胜县| 中山市| 荣昌县| 无棣县| 定襄县| 元谋县| 方城县| 沅江市| 金沙县| 潼南县| 怀安县|