标签存档: Visual Studio

1,055 查看

使用xsd,让你的config文件更健壮

xml在Asp.net中应用得非常之多,很多时候,我们自己还需要加入新的配置文件,对于新的配置文件,如果我们使用xsd对xml进行约束的话,会让整个配置文件更容易排错,也更有利于程序的健壮性。 最主要!! 实现起来非常简单。 下面简述过程。 【第一步】 首先我们先写一个最简的情况的xml,不在于是否真的和实际情况相符,但是要体现出各种可能性。 <?xml version="1.0" encoding="utf-8" ?> <accessValidator redirectLocation="http://www.baidu.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mywebsite.com/Website"> <validator name="ReferrerValidator" type="ResourceService.Core.Validator.UrlReferrerValidator"> <!– ReferrerValidator使用的参数,不同的地址请用|间隔,例如localhost|127.0.0.1 –> <param key="UrlReferrer" value="localhost,*.0.0.1"/> </validator> <validator name="HttpMethodValidator" type="ResourceService.Core.Validator.HttpMethodValidator"> <!– HttpMethodValidator使用的参数,不同的地址请用,间隔,例如HEAD,GET –> <param key="HttpMethod" value="HEAD,GET"/> <param key="param1" value="param2"/> </validator> </accessValidator> 【第二步】 既然用Asp.net,IDE应该是Visual …

继续阅读 »

4,259 查看

Visual Studio2010中unittest的xml文件路径error问题

【问题】 在单元测试中需要访问自定义的xml文件,或config文件时,会遇到vs说找不到相应文件的情况。 【原因】 在visual studio做单元测试时,相关的xml结果会默存放在一个output文件夹中,但是由于单元测试的默认机制,每次都会在TestResult中根据当前时间新建一个文件夹用以存放会用到的config文件和dll文件。这个时候就会出问题了。TestResult的OUTPUT目录是在testsetting里面设置的。而config文件的copy to Output Directory(选中config文件,选择properties)的属性是针对Build而言的,这样就会导致两个Output目录不一致的问题。那么此时你选择copy always的话,还是不会copy到testresult的OUTput目录中。这样,在访问相应会用到的xml文件时候,就会出现找不到文件的情况。从而报错。 【解决】 首先可通过vs的Test菜单项,选择Edit test setting编辑你使用到的testsetting,(当然也可以找到solution中的solution Items文件夹编辑其中的testsetting)。有了前面的原因分析。我们可以很容易的分析出,这里我们主要是变更输出目录即可,只要将两输出目录调整一致即可。我在这里是这么做的,在General中选择user define schema,并且去掉Append date-time stamp项,这个是为了让test result的output目录固定。然后这里设置的prefix定义了test result中的目录(比如这里,我们设置成Result)。然后,再选择unittest project的属性,在bulid标签处,将output directory改掉,选择为我们之前test result设置的output(就是在TestResult下面的Result目录,前面设置的)。这样两个output目录一致后,就一切正常了。

无觅相关文章插件,快速提升流量