如何读取MaxRequestLength的值----(.net2.0)
来源:岁月联盟
编辑:zhu
时间:2006-12-01
在.net2.0中新增类HttpRuntimeSection :

static public double getMaxlength()


...{

System.Web.Configuration.HttpRuntimeSection hrs = new System.Web.Configuration.HttpRuntimeSection();


/**/////return hrs.MaxRequestLength * 1024;

return hrs.MaxRequestLength ;

}
但上述方法读到的值却始终是4096,查阅MSDN,得知System.Web.Configuration(.net2.0中新增的类)的属性和方法除了AppSettings之外均只能读取"不可自定义的属性和功能",没有更好的办法,只好折衷:用.net1.1的方法解决:

static public string getMaxlengthByAppSetting()


...{

//先在Web.Config文件中增加一个key ****************************************//

// <appSettings>

// <add key="maxRequestLength" value="1550000"/>

//</appSettings>

//再来读取这个值,遗憾的是,这样只能写两遍,即

//<system.web>

//<httpRuntime maxRequestLength="1550000" executionTimeout="3600"/>

//</system.web>

//这两个值必须保持一致。

Configuration config = WebConfigurationManager.OpenWebConfiguration("~");

return config.AppSettings.Settings["maxRequestLength"].Value;



/**//* *********************以下为修改某个AppSettings的Key值。

////Configuration config = WebConfigurationManager.OpenWebConfiguration("~");

////if (config.AppSettings.Settings["MyAppKey"] == null)

//// config.AppSettings.Settings.Add("MyAppKey", "Hello!");

////else

//// config.AppSettings.Settings["MyAppKey"].Value = "Hello2!";

////config.Save();

*/

}
不知有没有更好的办法??