2022年Aspnet中的webconfig配置 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年Aspnet中的webconfig配置 .pdf》由会员分享,可在线阅读,更多相关《2022年Aspnet中的webconfig配置 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、A中的 web.config配置By Bendon 20101123 目录A中的 web.config配置 . 1一、配置文件保存位置. 2二、配置文件加载顺序. 2三、配置文件节点介绍. 31. . 32. . 53. . 54. . 6. 11四、针对配置文件的一些编程操作. 111. 运行时进行配置文件的修改. 112. 配置节点的加密. 12web.config是 中保存配置信息(比如数据库连接字符串等)的重要文件。它是基于xml的文本文件方式放在Web 应用程序的任何目录中,并且默认不随源文件编译到Dll中,而运行环境随时监视着它是否有改变,一但有变动,系统会自动重新加载里面的最新内
2、容。一、 配置文件保存位置.net的默认配置文件保存在“ windows目录对应 .net版本config”文件夹下面。 不同的操作系统windows目录不一样,我们在命令行下输入“echo %windir%”查看 windows目录所在的位置。图: web.config所在的目录A中有两个非常重要的配置文件,分别是 machine.config和 web.config,它们都位于config文件夹下面。 这两个文件一般不需要我们手工是维护它,保持默认即可。但针对应用程序,它自身会有0 个, 1 个或者多个web.config配置文件,多个配置文件会存在加载顺序问题。下节会介绍。注意,传说中.
3、net3.0和.net3.5只是在 .net2.0的基础上扩充中,所以还是没用的.net2.0的配置文件。它们连config这个目录都没有。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 二、 配置文件加载顺序IIS在 A网站启动时,会加载配置文件中的配置信息,然后缓存这些信息,不会每次要用都去读取配置文件,只是IIS 会随时监视着这些文件的变化,一量有变化,它会重新去读取并缓存配置信息。A网站运行时会按照以下方式加载配置文件
4、中的节点信息:1) 如果在当前运行页面所在的目录下有web.config文件,则查找是否存在所需要的节点,如果存在则返回结果,并停止下一步地查找。2) 如里所在目录不存在web.config配置或者配置文件里没有所需要的节点,则查找它所在的上一级目录的配置文件中的节点,直到网站根目录。(问题: IIS6中的虚拟目录算不算根目录)3) 如果网站根目录中都不存在web.config或者所需要的配置节点,转而到“ windows目录对应 .net版本web.config” 中去查找。4) 如果第3 条中还没找到,继续到“ windows目录对应 .net版本machine.config”中去查找。5
5、) 如果还没找到,那就报错吧。存在两个问题1) IIS6中的虚拟目录算不算根目录。2) 在系统运行时,在一个原本没有web.config的目录中手工加上一个web.config,会不会自动加载。三、 配置文件节点介绍Web.config文件是一个xml文本文件, 它的根节点为,该节点下包含常见的子节点有:、(保存数据库连接字符串)、和 。下面针对各节点配置进行介绍。1. configSections 元素指定了配置节和处理程序声明。由于ASP.NET 不对如何处理配置文件内的设置作任何假设,因此这非常必要。但 ASP.NET 会将配置数据的处理委托给配置节处理程序。配置结构信息如下: 每个se
6、ction 元素标识一个配置节或元素以及对该配置节或元素进行处理的关联ConfigurationSection 派生类。可以在sectionGroup 元素中对section 元素进行逻辑分组,以对section 元素进行组织并避免命名冲突。section 和 sectionGroup 元素包含在configSections 元素中。如果配置文件中包含configSections 元素,则configSections 元素必须是configuration 元素的第一个子元素。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精
7、心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - 下面我们来示例写一个自定义配置信息,并完成它的SectionHandler,首先我们在节点下添加configSections。 编写自定义SectionHandler,我们为MySectionHandler返回一个Hashtable的数据。namespace ConfigTest.SectionHandler public class MySectionHandler : IConfigurationSectionHandler public object Create(object parent
8、, object configContext, System.Xml.XmlNode section) Hashtable ht = new Hashtable(); foreach (XmlNode node in section.ChildNodes) if (node.Name = add) ht.Add(node.Attributeskey.Value, node.Attributesvalue.Value); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11
9、 页 - - - - - - - - - return ht; 在页面中使用该Section,由 ConfigurationManager.GetSection得到 SectionHandler返回的 Hashtable。注意参数结构。protected void Page_Load(object sender, EventArgs e) Hashtable ht = ConfigurationManager.GetSection(mySectionGroup/mySection) as Hashtable; foreach (DictionaryEntry de in ht) Respons
10、e.Write(de.Key + - + de.Value + ); 2. 该节点下主要用来存储应用程序的一些配置信息,也可以把数据库连接字符串也放在这里,不过.net2.0提供了 connectionStrings节点,所以数据库连接字符串还是不建议放在这里,下面为一个图片类型的实例。 调用方法为 : string ImgType = ConfigurationManager.AppSettingsImgType; 3. connectionStrings和 appSettings类似,不过用于保存配置数据库连接信息,下面给一个实例。 调用方式为:string connStr = Confi
11、gurationManager.ConnectionStringsSqlserverConnStr.ConnectionString; 4. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 为.net应用程序的行为方式配置节点,该节点包含很多子节点,很多子节点已经由.net配置好了,这里我们只来看看一些重要的配置节点。? 其中 mode属性有三种值,On/Off/RemoteOnly,默认为RemoteOnly。 Error节
12、点指定给定HTTP 状态代码的自定义错误页面。? 该节点为配置ASP.NET 身份验证方案,该方案用于识别查看ASP.NET 应用程序的用户。Mode属性包含四种身份验证模式:1. Windows(默认 ) 将 Windows 验证指定为默认的身份验证模式。将它与以下任意形式的Microsoft Internet 信息服务(IIS) 身份验证结合起来使用:基本、摘要、集成Windows 身份验证(NTLM/Kerberos) 或证书。在这种情况下,您的应用程序将身份验证责任委托给基础IIS 。2. Forms 将 ASP.NET 基于窗体的身份验证指定为默认身份验证模式。3. Passport
13、 将 Microsoft Passport Network 身份验证指定为默认身份验证模式。4. None 不指定任何身份验证。您的应用程序仅期待匿名用户,否则它将提供自己的身份验证。下面的代码示例演示如何为基于窗体的身份验证配置站点、指定传输来自客户端的登录信息的Cookie 的名称以及指定当初始身份验证失败时使用的登录页的名称。必须将authorization 节包含在内才能要求对所有用户进行Forms 身份验证,并拒绝匿名用户访问站点。 Login.aspx中登陆通过:FormsAuthentication.RedirectFromLoginPage(this.TextBox1.Text
14、, true); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - ? HttpHandlers可用于根据请求中指定的URL 和 HTTP 谓词将传入的请求映射到相应的处理程序。可以针对某个特定的目录下指定的特殊文件进行特殊处理。下面我们来针对网站path目录下的所有*.abc文件夹来编写自定义HttpHandle。先添加到配置文件: 编写 AbcHttpHandler: namespace ConfigTest.HttpHan
15、dler public class AbcHttpHandler : IHttpHandler, IRequiresSessionState public bool IsReusable get return true; public void ProcessRequest(HttpContext context) context.Response.Write(Hello HttpHandler); context.SessionTest = 你在调用AbcHttpHandler容器中调用Session; context.Response.Write(context.SessionTest);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Asp。net中的web。config配置 2022 Asp net 中的 web config 配置
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内