在.net2.0中新增类HttpRuntimeSection :
static
public
double
getMaxlength()
... {
System.Web.Configuration.HttpRuntimeSectionhrs = new System.Web.Configuration.HttpRuntimeSection();
/**/ /// /returnhrs.MaxRequestLength*1024;
return hrs.MaxRequestLength;
}
... {
System.Web.Configuration.HttpRuntimeSectionhrs = new System.Web.Configuration.HttpRuntimeSection();
/**/ /// /returnhrs.MaxRequestLength*1024;
return hrs.MaxRequestLength;
}
但上述方法读到的值却始终是4096,查阅MSDN,得知System.Web.Configuration(.net2.0中新增的类)的属性和方法除了AppSettings之外均只能读取"不可自定义的属性和功能 ",没有更好的办法,只好折衷:用.net1.1的方法解决:
static
public
string
getMaxlengthByAppSetting()
... {
// 先在Web.Config文件中增加一个key**************************************** //
// <appSettings>
// <addkey="maxRequestLength"value="1550000"/>
// </appSettings>
// 再来读取这个值,遗憾的是,这样只能写两遍,即
// <system.web>
// <httpRuntimemaxRequestLength="1550000"executionTimeout="3600"/>
// </system.web>
// 这两个值必须保持一致。
Configurationconfig = WebConfigurationManager.OpenWebConfiguration( " ~ " );
return config.AppSettings.Settings[ " maxRequestLength " ].Value;
/**/ /* *********************以下为修改某个AppSettings的Key值。
Configurationconfig=WebConfigurationManager.OpenWebConfiguration("~");
if(config.AppSettings.Settings["MyAppKey"]==null)
config.AppSettings.Settings.Add("MyAppKey","Hello!");
else
config.AppSettings.Settings["MyAppKey"].Value="Hello2!";
config.Save();
*/
}
... {
// 先在Web.Config文件中增加一个key**************************************** //
// <appSettings>
// <addkey="maxRequestLength"value="1550000"/>
// </appSettings>
// 再来读取这个值,遗憾的是,这样只能写两遍,即
// <system.web>
// <httpRuntimemaxRequestLength="1550000"executionTimeout="3600"/>
// </system.web>
// 这两个值必须保持一致。
Configurationconfig = WebConfigurationManager.OpenWebConfiguration( " ~ " );
return config.AppSettings.Settings[ " maxRequestLength " ].Value;
/**/ /* *********************以下为修改某个AppSettings的Key值。
Configurationconfig=WebConfigurationManager.OpenWebConfiguration("~");
if(config.AppSettings.Settings["MyAppKey"]==null)
config.AppSettings.Settings.Add("MyAppKey","Hello!");
else
config.AppSettings.Settings["MyAppKey"].Value="Hello2!";
config.Save();
*/
}
不知有没有更好的办法??