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);