来源:微信公众号CodeL

1.配置文件层次分类

  1. Machine.config:  对.netframework整体的配置
  2. web.config(framework目录下):  对所有项目所公有的应用程序配置
  3. web.config(应用程序下):   对当前应用程序的配置(项目目录中常见的)

2.运行顺序

配置文件的运行顺序从大到小,从公有到私有:machine.config -> (公有)web.config -> (私有)web.config

当前配置文件决定了所在目录及其子目录的配置信息,并且子目录下的配置信息覆盖其父目录的配置,多个web.config文件时,以最近的一个web.config配置为准。

3.常用方法与问题分享

   1. MVC自定义路由无法访问

先给大家分享一个在MVC开发中遇到的问题,可能很多童鞋都有遇到过,就是自定义路由无法访问:

解决办法(添加如下配置):

<system.webServer>

<!--允许访问自定义路由的路径-->

<modules runAllManagedModulesForAllRequests="true">

<remove name="FormsAuthenticationModule" />

</modules>

</system.webServer>
   2. 引用外部配置文件进行扩展

比如我们有一个外部配置文件My.Config,起内容如下:

<?xml version="1.0"?>

<appSettings>

<!--单页可提交数据量-->

<add key="aspnet:MaxHttpCollectionKeys" value="5000" />

<!--单页显示数据行数-->

<add key="PageSize" value="20"/>

<!--是否发送短信提醒 1发送 0不发送-->

<add key="sendMsg" value="1"/>

<add key="ClientID" value="1065902100656"/>

</appSettings>

引用方法:在web.config中:<appSettings configSource="My.config"/>

   3.自定义HttpModule和Httphandler的使用

对于写好的自定义HttpModule和Httphandler,我们需要进行配置才会使我们写好的代码开始工作,比如自定义了一个MyHttpModule.cs,需要加如下配置才会生效:

<!--IIS6或者IIS7经典模式-->

<system.web>

<httpModules>

<add name="mymodule" type="命名空间.MyHttpModule"/>

</httpModules>

</system.web>

<!--IIS7集成模式-->

<system.webServer>

<modules>

<add name="mymodule" type="命名空间.MyHttpModule"/>

</modules>

</system.webServer> 
4.配置文件节点说明

  根结点:<configuration>

子节点:

  1. <appSettings>节点:主要用来存储应用程序的一些配置信息,通过Key获取Value<appSettings> 
        <add key="send" value="0"/> 
    </appSettings>

2. <connectionStrings>节点:主要用于配置数据库连接,方便调整数据库连接信息      <connectionStrings> 
    <!--SQL Server数据库配置--> 
    <add name="ConnectionString1" connectionString="Data Source=127.0.0.1;Initial Catalog=AspNetStudy;User ID=sa;Password=12"/> 
       </connectionStrings>

3. <compilation>节点:编译设置。默认的debug属性为“true”,即允许调试,在这种情况下会影响网站的性能,所以在网站上线之后应将其设为“false”。<compilation debug="true" targetFramework="4.5" />

4. <customErrors>节点:用于定义自定义错误信息<customErrors mode="On"/>defaultRedirect说明:表示应用程序发生错误时重定向到的默认URLMode 说明:
On:表示在本地和远程用户都会看到自定义错误信息。
Off:禁用自定义错误信息,本地和远程用户都会看到详细的错误信息。
RemoteOnly:表示本地用户将看到详细错误信息,而远程用户将会看到自定义错误信息。

web.config是asp.net应用程序中一个很重要的配置文件,本文介绍了一些比较常用基本节点,童鞋们可以自己去查阅更多的资料进行深入了解。

给大家推荐一个技术类公众号:

ASP.NET网站开发中的配置文件的更多相关文章

  1. 整合Spring.net到asp.net网站开发中初探

    整合Spring.net到asp.net网站开发中初探 http://www.veryhuo.com 2009-10-21 烈火网 投递稿件 我有话说   Spring提供了一个轻量级的用于构建企业级 ...

  2. asp.net 网站开发流程总结

    由于这学期要做asp.net的网站开发,导师让我们在前期做详细的计划说明,时间安排.由于网站开发流程不知道,以及需要学什么指示都是盲懂,所以计划安排需在了解大致流程之后才能做出来,一下是询问同学和在网 ...

  3. C#开发中使用配置文件对象简化配置的本地保存

    C#开发中使用配置文件对象简化配置的本地保存 0x00 起因 程序的核心是数据和逻辑,开发过程中免不了要对操作的数据进行设置,而有些数据在程序执行过程中被用户或程序做出的修改是应该保存下来的,这样程序 ...

  4. 网站开发中很实用的 HTML5 & jQuery 插件

    这篇文章挑选了15款在网站开发中很实用的 HTML5 & jQuery 插件,如果你正在寻找能优化网站,使其更具创造力和视觉冲击,那么本文正是你需要的.这些优秀的 jQuery 插件能为你的网 ...

  5. C#开发中使用配置文件

    C#开发中使用配置文件对象简化配置的本地保存 0x00 起因 程序的核心是数据和逻辑,开发过程中免不了要对操作的数据进行设置,而有些数据在程序执行过程中被用户或程序做出的修改是应该保存下来的,这样程序 ...

  6. 网站开发中使用javascript获取浏览器滚动条宽度

    在网站开发中,有时候需要获取浏览器滚动条的宽度,在武汉蚂蹄软件服务中心的技术人员指导之下,我实现了该需求.记录如下: 首先说明一下原理: ①生成一个div,设置滚动条不可见,记录其宽度: ②将上面的d ...

  7. CGI、ASP、PHP、JSP、 ASP.NET网站开发语言比较

    一.主流网站开发语言的简介及优缺点. 现在主流的网站开发语言主要包括cgi.asp.php.asp.net.jsp等. HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持. (一)  ...

  8. 网站开发中的相对URL问题--JSP

    问题描述: 入门网站开发时,我们会在相对URL问题上有疑惑.例如,在一个jsp页面中引入css外部文件, <link rel="stylesheet"          hr ...

  9. asp.net -mvc框架复习(1)-ASP.NET网站开发概述

    1.网站开发的基本步骤: 2.网站开发的需要的知识结构 (1)网站开发前台页面技术 页面设计:HTML  .CSS+DIV 页面特效:JavaScript.jQery (2)OOP编程核心公共技能 C ...

随机推荐

  1. 比较偏门的JVM语言Quercus - PHP on JVM

    其实,我不确定Quercus是否可以被认定为一门JVM语言:其次Quercus这个东东分开源版与商业版,开源版只能解释执行.而商业版能编译成Java字节码. 但我知道国内,阿里巴巴很早就在使用它,当然 ...

  2. Visual Studio中设置默认VC++路径

    菜单"View" -> "Other Windows" -> "Property Manager" 选择对应的配置并修改即可.

  3. How Tomcat Works读书笔记之升级架构

    上一篇HttpServer类职责很多,包括启动服务器,创建ServerSocket,得到客户端Socket,创建Request对象和Response对象,并解析Http请求,这样很混乱,不利于以后服务 ...

  4. 多准则决策模型-TOPSIS评价方法-源码

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...

  5. 微软发布ASP.NET 5路线图

    这次随 Visual Studio 2015 发布的 ASP.NET 版本是 ASP.NET 4.6 与 ASP.NET 5 beta5.在 VS2015 发布的同时,微软也发布了 ASP.NET 5 ...

  6. mac下eclipse的svn(即svn插件)怎么切换账号?

    以mac os x为例(Unix/Linux类似) 打开命令行窗口,即用户的根目录(用户的home目录) cd ~ 即可进入home目录. 执行命令 ls -al 会列出home目录下的所有文件及文件 ...

  7. 用jq编码解码一个url地址

    介绍一下编码解码函数对 1.    escape /unescape   主要用于汉字编码,返回字符的unicode编码值, 对“+”不能编码 2.     encodeURI / decodeURI ...

  8. ECMAScript 6学习笔记(一):展开运算符

    同步发布于:https://mingjiezhang.github.io/(转载请说明此出处). JavaScript是ECMAScript的实现和扩展,ES6标准的制定也为JavaScript加入了 ...

  9. HTML列表元素

    HTML定义了3类列表: 1.有序列表(通常用数字编号) 2.无序列表(通常前面加原点) 3.自定义列表(列表项目,带有集成的定义) 有序列表和无序列表均为列表中的每一项使用列表项元素(<li& ...

  10. iOS多线程-05-多图下载

    效果图 常见问题及解决方法 图片重复下载 将内存保存在内存或沙盒中. 若下载的图片量较大,则会出现UI界面不流畅的现象 在子线程中执行下载操作,然后回到主线程成中进行UI界面的刷新. 由于cell的循 ...