当前所在位置: 首页 > 数码科技 > 正文

Asp.net中的web.config配置

2024-06-04 本站作者 【 字体:

是中保存配置信息比如连接字符串等的重要文件。它是基于xml的文本文件方式放在Web应用程序的任何目录中,并且默认不随源文件编译到Dll中,而运行环境随时监视着它是否有改变,一但有变动,系统会自动重新加载里面的最新内容。

一、 配置文件保存位置

.net的默认配置文件保存在"windows目录\\Framework\对应.net版本\config"文件夹下面。不同的windows目录不一样,我们在命令行下输入"echo %windir%"查看windows目录所在的位置。

图:所在的目录

中有两个非常重要的配置文件,分别是和,它们都位于config文件夹下面。这两个文件一般不需要我们手工是维护它,保持默认即可。但针对应用程序,它自身会有0个,1个或者多个配置文件,多个配置文件会存在加载顺序问题。下节会介绍。

注意,传说中.net3.0和.net3.5只是在.net2.0的基础上扩充中,所以还是没用的.net2.0的配置文件。它们连config这个目录都没有。

二、 配置文件加载顺序

在网站启动时,会加载配置文件中的配置信息,然后缓存这些信息,不会每次要用都去读取配置文件,只是IIS会随时监视着这些文件的变化,一量有变化,它会重新去读取并缓存配置信息。

网站运行时会按照以下方式加载配置文件中的节点信息:

1 如果在当前运行页面所在的目录下有文件,则查找是否存在所需要的节点,如果存在则返回结果,并停止下一步地查找。

2 如里所在目录不存在配置或者配置文件里没有所需要的节点,则查找它所在的上一级目录的配置文件中的节点,直到网站根目录。问题:IIS6中的虚拟目录算不算根目录

3 如果网站根目录中都不存在或者所需要的配置节点,转而到"windows目录\\Framework\对应.net版本\config\"中去查找。

4 如果第3条中还没找到,继续到"windows目录\\Framework\对应.net版本\config\"中去查找。

5 如果还没找到,那就报错吧。

存在两个问题

1 IIS6中的虚拟目录算不算根目录。

2 在系统运行时,在一个原本没有的目录中手工加上一个,会不会自动加载。

三、 配置文件节点介绍

文件是一个xml文本文件,它的根节点为configuration,该节点下包含常见的子节点有:configSections、appSettings、connectionStrings保存数据库连接字符串、location和。下面针对各节点配置进行介绍。

1. configSections

configSections 元素指定了配置节和处理程序声明。由于 不对如何处理配置文件内的设置作任何假设,因此这非常必要。但 会将配置数据的处理委托给配置节处理程序。配置结构信息如下:

configSections

!--定义配置节处理程序与配置元素之间的关联。--

section /

!--定义配置节处理程序与配置节之间的关联。--

sectionGroup /

!--移除对继承的节和节组的引用。--

remove /

!--移除对继承的节和节组的所有引用,只允许由当前 section 和 sectionGroup 元素添加的节和节组。--

/configSections

每个 section 元素标识一个配置节或元素以及对该配置节或元素进行处理的关联 ConfigurationSection 派生类。可以在 sectionGroup 元素中对 section 元素进行逻辑分组,以对 section 元素进行组织并避免命名冲突。section 和 sectionGroup 元素包含在 configSections 元素中。

如果配置文件中包含 configSections 元素,则 configSections 元素必须是 configuration 元素的第一个子元素。

下面我们来示例写一个自定义配置信息,并完成它的SectionHandler,首先我们在configuration节点下添加configSections。

configuration

configSections

sectionGroup name="mySectionGroup"

section name="mySection" requirePermission="true"

type="," /

/sectionGroup

/configSections

mySectionGroup

mySection

add key="key1" value="value1" /

add key="key2" value="value2" /

add key="key3" value="value3" /

add key="key4" value="value4" /

add key="key5" value="value5" /

/mySection

/mySectionGroup

compilation debug="true" targetFramework="4.0" /

/configuration

编写自定义SectionHandler,我们为MySectionHandler返回一个Hashtable的数据。

namespace

public class MySectionHandler : IConfigurationSectionHandler

public object Createobject parent, object configContext, section

Hashtable ht = new Hashtable;

foreach XmlNode node in

if == "add"

"key".Value, "value".Value;

return ht;

在页面中使用该Section,由得到SectionHandler返回的Hashtable。注意参数结构。

protected void Page_Loadobject sender, EventArgs e

Hashtable ht = "mySectionGroup/mySection" as Hashtable;

foreach DictionaryEntry de in ht

+ " - " + + "br";

2. appSettings

该节点下主要用来存储应用程序的一些配置信息,也可以把数据库连接字符串也放在这里,不过.net2.0提供了connectionStrings节点,所以数据库连接字符串还是不建议放在这里,下面为一个图片类型的实例。

appSettings

!--图片类型扩展名--

add key="ImgType" value=".bmp;.jpg;.gif;.png"/

/appSettings

调用方法为:

string ImgType = "ImgType";

3. connectionStrings

connectionStrings和appSettings类似,不过用于保存配置数据库连接信息,下面给一个实例。

connectionStrings

/connectionStrings

调用方式为:

string connStr = "SqlserverConnStr".ConnectionString;

为.net应用程序的行为方式配置节点,该节点包含很多子节点,很多子节点已经由.net配置好了,这里我们只来看看一些重要的配置节点。

? customErrors

customErrors defaultRedirect="" mode="RemoteOnly"

error statusCode="500" redirect=""/

/customErrors

其中mode属性有三种值,On/Off/RemoteOnly,默认为Rem

阅读全文
相关推荐

2024去云南旅游最佳路线 云南旅游的最佳路线安排

2024去云南旅游最佳路线 云南旅游的最佳路线安排
如果你是第一次来云南旅游,推荐最经典的线路是:昆明→大理→丽江→泸沽湖→香格里拉。这条线路经典的经典比较多,比较集中,都是在一条线,每个地方都有机场,全国好多城市都有直飞的航班。交通也很方便,可以根据自己的时间随意搭配。

2024最适合穷游的12个地方 一个人穷游去哪里好

2024最适合穷游的12个地方 一个人穷游去哪里好
1、哈尔滨:要想体验冬季游玩乐趣的朋友,那可一定不要错过哈尔滨这座城市了,绝对是让你来了还想再来。除了好玩的滑雪、冰雕以外,其实哈尔滨也是非常适合拍照写真的,因为哈尔滨临近俄罗斯这个国家,其有的建筑也是非常有国外欧美建筑的风格。2、苏州:苏州的每一角落,都有着江南水乡的风韵。必打卡景点有:平江路:先有平江路,后有苏州城,一条历史老街,一条沿河的小路。白天就来平江路感受原汁原味的苏州。拙政园:中国四大园林之一,亭台楼阁,奇石古树,园区以水为中心,山木环绕。苏州博物馆:需要提前预约,整个博物馆宛若一座小园林。

2024桂林必去五个景点 桂林旅游必看景点

2024桂林必去五个景点 桂林旅游必看景点
来桂林旅游,漓江是必游的。漓江景区是世界上规模最大、风景最美的岩溶山水游览区,集中了桂林山水的精华。一般游漓江的主要方式有坐船、竹筏及徒步,包括漓江三星、四星游船,漓江竹筏游和兴坪渔村大船游等。

2024清明家庭旅游最佳去处 清明节去哪里玩比较好

2024清明家庭旅游最佳去处 清明节去哪里玩比较好
带着父母或者爷爷奶奶来厦门,在鼓浪屿上度过一个悠闲下午,身心都可以得到放松。厦门是很多人旅游必去的城市之一,这里有很多出名的景点,比如说鼓浪屿、中山路步行街等等。厦门位于福建省,因此这里一年四季的气候都是比较合适的。鼓浪屿是一个小岛,需要乘船上岛哦。岛上有日光岩、菽庄花园、风琴博物馆等景点,在日光岩内,可以俯视全岛,将景色尽收眼底。这里还有著明经典打卡地《最美转角》。

张家界旅游必去景区 张家界旅游景点推荐

张家界旅游必去景区 张家界旅游景点推荐
张家界旅游必去景区,指的是张家界的核心景区武陵源风景区,也就是通常所说的“张家界国家森林公园”。张家界国家森林公园和武陵源风景区其实是同一片景区,只需要买一张门票即可,可从五处门票站进景区。第二个打卡景点是天门山,通过乘坐天门山索道,你可以欣赏到绝美的风景,山顶森林和各种珍稀植物让人叹为观止。天门山景区与张家界国家森林公园不在同一个地方,门票也是分开购买的。其最著名地标是天门洞,出火车站抬头就能看到天门山索道。天门山国家森林公园内处处古树参天,藤蔓缠绕。景区分为天门洞、中线、东线和西线景区等几个主要区域。

2024重庆旅游攻略 2024年重庆旅游景点

2024重庆旅游攻略 2024年重庆旅游景点
重庆旅游住宿建议住在解放碑附近,神仙选择,地理位置优越,离各大景点都近,出行便利,公交,地铁,打车都方便,好吃的多,八一好吃街,包括一些有名的小吃都在附近。而且是商业中心,购物也方便,适合逛吃逛吃。

西安旅游攻略自由行路线推荐 第一次去西安旅游攻略

西安旅游攻略自由行路线推荐 第一次去西安旅游攻略
第一天洒金桥和西羊市吃早点,西安本地人一般选择的洒金桥和西羊市。吃完早饭步行前往钟鼓楼,鼓楼可以看到各种类型的鼓,以及一些关于鼓的背景和知识,还有一些表演。钟楼鼓楼其实都是夜景好看。下午就去碑林博物馆和西安城墙。碑林博物馆很多喜欢历史和石刻的一定要来。傍晚就去城墙,建议女孩子穿汉服,拍照很出片。晚上可以去永兴坊转转,可以在这儿吃吃逛逛。

2024昆明旅游攻略景点大全 昆明有什么好玩的地方推荐

2024昆明旅游攻略景点大全 昆明有什么好玩的地方推荐
冬天旅游的话一定要去滇池,这里会有成群的海鸥栖息在这里。拍照超级好看。3月份之后海鸥就会飞走,一定要留意时间,不要跑空。滇池周围有大小数十个山峰,在湖畔,您可以欣赏到云南民族村、云南民族博物馆、西山华亭寺、太华寺、三清阁、龙门、筇竹寺、大观楼及晋宁盘龙寺、郑和公园等风景名胜区。在滇池可以看到很多海鸥。天气特别晴朗,滇池周边的柳树摇曳,加上阳光照射,堪称为一副美景。可以去买点面包喂海鸥,抓拍几张漂亮的照片。

成都旅游必去十大景点推荐 四川成都最值得去的十大景点

成都旅游必去十大景点推荐 四川成都最值得去的十大景点
1、锦里:夜间的锦里更加热闹,人来人往的街道,水榭亭台间点缀着红红的灯笼,让夜晚的锦里更具古典韵味,十分适合拍照打卡。锦里的店铺都很有川蜀地区老房子的特色,古色古香,还可以淘到各种小玩意。2、宽窄巷子:宽窄巷子是一条清朝遗留下来的古街道,由宽巷子、窄巷子和井巷子三条古朴街道和其间院落组成。在这里还可以体验碗茶、掏耳朵、川剧变脸等特色民俗项目。可以穿汉服来,很有感觉。其实井巷子是非常有看点,而且适合拍照的一条街。

2024山西旅游必去十大景点 山西必去景点攻略地

2024山西旅游必去十大景点 山西必去景点攻略地
1、云冈石窟:中国四大石窟之一,是历史古迹类的景点。第20窟是云冈石窟的代表作,游客们游览云冈石窟都会来这里拍照留念。云冈石窟一共有四十多个洞窟,时间有限的话可以选部分来看。尤其是第五窟和第六窟。这两个洞窟非常精美,洞窟里面密密麻麻的雕像,太壮观太震撼了。比较传统的参观路线是从东部的第1窟开始,依次往西直到第45窟结束。
本文Tag