System.Web.HttpRuntime类是整个Asp.net服务器处理的入口。
这个类提供了一系列的静态属性,反映web应用程序域的设置信息,而且每个web应用程序域中存在一个System.Web.Runtime类。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace HttpRuntimeDemo { public partial class _default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); //应用程序域id sb.AppendFormat("AppDomainAppId:{0}<br/>", HttpRuntime.AppDomainAppId); //web应用程序所在文件目录 sb.AppendFormat("AppDomainAppPath:{0}<br/>", HttpRuntime.AppDomainAppPath); //web应用程序的虚拟目录 sb.AppendFormat("AppDomainAppVirtualPath:{0}<br/>", HttpRuntime.AppDomainAppVirtualPath); //客户端脚本在服务器上的文件目录 sb.AppendFormat("AspClientScriptPhysicalPath:{0}<br/>", HttpRuntime.AspClientScriptPhysicalPath); //客户端脚本在服务器上的虚拟目录 sb.AppendFormat("AspClientScriptPhysicalPath:{0}<br/>", HttpRuntime.AspClientScriptVirtualPath); //asp.net安装目录 sb.AppendFormat("AspInstallDirectory:{0}<br/>", HttpRuntime.AspInstallDirectory); //bin目录 sb.AppendFormat("BinDirectory:{0}<br/>", HttpRuntime.BinDirectory); //clr安装目录 sb.AppendFormat("ClrInstallDirectory:{0}<br/>", HttpRuntime.ClrInstallDirectory); //生成代码的目录 sb.AppendFormat("CodegenDir:{0}<br/>", HttpRuntime.CodegenDir); //iss版本 sb.AppendFormat("IISVersion:{0}<br/>", HttpRuntime.IISVersion.MajorRevision.ToString()); //本机配置文件所在的目录 sb.AppendFormat("MachineConfigurationDirectory:{0}<br/>", HttpRuntime.MachineConfigurationDirectory); //是否使用iis7集成模式 sb.AppendFormat("UsingIntegratedPipeline:{0}<br/>", HttpRuntime.UsingIntegratedPipeline.ToString()); // Summary: // Gets a value that indicates whether the application is mapped to a universal // naming convention (UNC) share. sb.AppendFormat("IsOnUNCShare:{0}<br/>", HttpRuntime.IsOnUNCShare.ToString()); Response.Write(sb.ToString()); } } }
上面列出了HttpRuntime主要的几个静态属性,输出结果为
而HttpRuntime的静态方法ProcessRequest将帮助我们处理Http请求。
// // Summary: // Drives all ASP.NET Web processing execution. // // Parameters: // wr: // An System.Web.HttpWorkerRequest for the current application. // // Exceptions: // System.ArgumentNullException: // The wr parameter is null. // // System.PlatformNotSupportedException: // The Web application is running under IIS 7 in Integrated mode. public static void ProcessRequest(HttpWorkerRequest wr);