我一直在收到“连接强制关闭”错误,在研究解决方案时,我看到了以下web.config选项的建议,这些选项目前尚未在我的网络应用中设置。
在我改变它们之前,我想知道它们目前的用途。
有人可以告诉我如何从.NET代码中读取这些值,最好是VB.NET,尽管C#很好。
<httpRuntime
executionTimeout="90"
maxRequestLength="4096"
useFullyQualifiedRedirectUrl="false"
minFreeThreads="8"
minLocalRequestFreeThreads="4"
appRequestQueueLimit="100"
/>
答案 0 :(得分:6)
以下是列出每个值及其默认值的MSDN页面。
以下代码将打开httpRuntime部分programitcly
Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
object o = config.GetSection("system.web/httpRuntime");
HttpRuntimeSection section = o as HttpRuntimeSection;
找到此代码here
在VB中
Dim config As Configuration = WebConfigurationManager.OpenWebConfiguration("~")
Dim o As Object = config.GetSection("system.web/httpRuntime")
Dim section As HttpRuntimeSection = TryCast(o, HttpRuntimeSection)
确保使用/导入以下命名空间。
System.Configuration;
System.Web.Configuration;
根据评论进行修改。
从MSDN呼叫WebConfigurationManager.OpenWebConfiguration
路径 键入:System.String 配置文件的虚拟路径。如果为null,则打开根Web.config文件。
即使您没有在web.config中定义httpRuntime,它也是根Web.config,并且会返回。我已经使用和不使用httpRuntime进行了测试。
答案 1 :(得分:2)
MSDN documentation为此提供了含义和默认值:)
如果您对其他web.config
值/含义/默认值感兴趣,请从<configuration>
schema开始,然后深入了解您所追求的内容。供快速参考(.Net 4值):
<httpRuntime
executionTimeout="110"
maxRequestLength="4096"
requestLengthDiskThreshold="80"
useFullyQualifiedRedirectUrl="false"
minFreeThreads="8"
minLocalRequestFreeThreads="4"
appRequestQueueLimit="5000"
enableKernelOutputCache="true"
enableVersionHeader="true"
requireRootedSaveAsPath="true"
enable="true"
shutdownTimeout="90"
delayNotificationTimeout="5"
waitChangeNotification="0"
maxWaitChangeNotification="0"
requestPriority="Normal"
enableHeaderChecking="true"
sendCacheControlHeader="true"
apartmentThreading="false"
/>
答案 2 :(得分:-1)
特定安装的默认值存储在machine.config
文件中。要访问这些值,您可以使用:
ConfigurationManager.OpenMachineConfiguration();
获取配置。访问这些值可能存在一些安全限制。