来源:微信公众号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. 页面UI注意事项,你在乎吗?

    早上打开微信,看到一篇文章,下面就和大家分享一下,该文章属于前端文章系列,希望做后台开发系统的程序员也可以学习一下,只会写代码把功能实现是第一,接下来也要把界面做做好. 现在的界面风格对于手机而言,一 ...

  2. LeetCode130:Surrounded Regions

    题目: Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is capt ...

  3. Win7配置Go环境

    最近想学习下Go语言,先从最基本的Hello Go开始,搭建Go开发环境 一.下载Go包 由于Go官网国内访问经常有问题,可以从国内的镜像下载: http://www.golangtc.com/ 二. ...

  4. 狂屌的Windows下的定时任务工具xStarter

    xStarter是一款将某些常规计算机操作自动化进行为目的的程序. 它不能为你生成word文件,但是它可以周期性地为你备份文件以保持完整性. 程序的特点有:加强的任务计划工具;在系统事件上执行任务;用 ...

  5. 在Android设备上判断设备是否支持摄像头

    private boolean hasCamera(){ boolean hasCamera=false; PackageManager pm=getActivity().getPackageMana ...

  6. java注释指导手册

    译文出处: Toien Liu   原文出处:Dani Buiza 编者的话:注解是java的一个主要特性且每个java开发者都应该知道如何使用它. 我们已经在Java Code Geeks提供了丰富 ...

  7. ahjesus C# Flags 位域略说

    class Program { [Flags] public enum Week { [Description("星期一")] Monday = << , [Descr ...

  8. Linux下建立Nexus私服

    Linux下建立Nexus私服 要安装3个东西,然后配置私服: 1.JDK 2.Maven 3.Nexus 然后配置 1.JDK的安装 下载JDK安装包,格式为RPM格式,安装即可 安装程序 #rpm ...

  9. [Azure] Notification Hubs注册模式

    [Azure] Notification Hubs注册模式 关于Azure Notification Hubs的注册模式,可以参考下列连结的文件内容. Notification Hubs Featur ...

  10. 初识Asp.net Identity

    第一篇,多多指教啦! 之前做asp.net的网站只知道Asp.net的身份验证方式有:Windows验证和Forms验证.今天初步了解了下asp.net的Identity技术,顺带了解了它之前的Mem ...