如何读取MaxRequestLength的值----(.net2.0)


在.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(); 
        
*/

       
    }


不知有没有更好的办法??
posted @ 2007-12-29 13:37  邀月  阅读(807)  评论(0编辑  收藏  举报