我正在做一个ASP.NET MVC3 web应用程序(不是我写的),最大上载大小为100MB.现在,这个web应用程序被安装在客户的服务器上,所以如果每个客户都可以配置这个值max upload size,那就太好了.他们有权编辑网页.如果需要,请为web应用程序配置.
现在网络有了价值.这样配置:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
</system.webServer>
这里还有一个类似的值:
<system.web>
<httpRuntime maxRequestLength="104857600" executionTimeout="360" />
</system.web>
104857600字节似乎是public const double MaxContentSize = 104857600
MB的文件上传限制.然而,在更改值时,我发现这不是权威值,也没有遵守新的限制.因此,在进一步挖掘之后,我在C代码的其他地方发现了一个硬编码值public const double MaxContentSize = 104857600
,另一个C方法使用该值来接受/拒绝Ajax文件上传.
所以我想我要做的是替换代码中的硬编码数字,这样它就能从网络中读取值.配置.那么,至少任何人都可以在网络上改变这种价值观.当他们部署网站时进行配置.
你能做这样的事吗?
MaxContentSize = ConfigurationManager.systemWeb.httpRuntime['maxRequestLength'];
我在网上看到了一些使用appSettings的例子.配置,例如.
<appSettings><add key="MySetting" value="104857600" /></appSettings>
然后访问它,如下所示:
ConfigurationManager.AppSettings["MySetting"]
但这意味着在其中添加一个自定义值,现在我们有3个地方可以在web上更改它.配置.有人知道怎么做吗?
非常感谢