色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

ASP.NET 2.0下的條件編譯

在Web開(kāi)發(fā)中測(cè)試單個(gè)頁(yè)面的功能實(shí)在是太麻煩,從首頁(yè)用戶名、密碼進(jìn)去后,經(jīng)過(guò)一些操作后才可以來(lái)到你要測(cè)試的那個(gè)頁(yè)面。(其實(shí)無(wú)論做什么的開(kāi)發(fā),測(cè)試單個(gè)功能都是很麻煩)。抱著小心謹(jǐn)慎的態(tài)度,我一般喜歡寫(xiě)幾段測(cè)一次,如果每次都興師動(dòng)眾的啟動(dòng)整個(gè)項(xiàng)目來(lái)測(cè)試顯然是很不經(jīng)濟(jì)的做法。

我一般會(huì)在Solution中新增一個(gè)用于測(cè)試用的配置,在其中增加一個(gè)“Test"之類(lèi)的編譯指令,然后在代碼中,把一些測(cè)試條件,測(cè)試方法放到這個(gè)指令下。在開(kāi)發(fā)團(tuán)隊(duì)還沒(méi)有引進(jìn)單元測(cè)試之類(lèi)的概念的時(shí)候,我可不想用新增一個(gè)測(cè)試項(xiàng)目這樣的方法來(lái)做這種事情。而且對(duì)于象Web下單個(gè)的Page這樣的情況我也不知道應(yīng)該是如何進(jìn)行法。所以還是用以前自己的編譯指令這種方法比較的輕車(chē)熟路點(diǎn)。

(我以前在寫(xiě)一些非WEB下的東西的時(shí)候,也喜歡把測(cè)試方法與類(lèi)本身寫(xiě)在一個(gè)文件里,然后用編譯指令區(qū)分開(kāi),如果要測(cè)試,就直接在開(kāi)發(fā)環(huán)境下選擇"Test"的那個(gè)配置,然后啟動(dòng)TestDriven來(lái)測(cè)試之,不用啟動(dòng)整個(gè)項(xiàng)目對(duì)機(jī)器省力多了,TestDriven這個(gè)東西很管用的。
如果你是用C#作開(kāi)發(fā)的,在開(kāi)發(fā)環(huán)境中,如果當(dāng)前這個(gè)編譯條件不滿足的時(shí)候,那些代碼都會(huì)灰掉,而且可以縮進(jìn),一點(diǎn)都不障眼)

 

不過(guò)我的那些伎倆,在VS2005下有點(diǎn)不管用了,現(xiàn)在WEB開(kāi)發(fā)跟以前有點(diǎn)區(qū)別了。在上面找來(lái)找去都找不到地方來(lái)新增編譯指令,非WEB的開(kāi)發(fā)還是可以找到地方新增的。折騰了半天,發(fā)現(xiàn)現(xiàn)在把一些設(shè)置的東西都放到Web.config里來(lái)了,條件編譯當(dāng)然也不例外。

比如現(xiàn)在要加一個(gè)”Test”的條件編譯指令。在Web.config文件中,在<compilation>這個(gè)節(jié)下加入下述語(yǔ)句就可以了。

      <compilers>

        <compiler language="vb"

              type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"

              extension=".VB"

              compilerOptions="/define:Debug=True /define:Trace=True /define:Test=True "/>

        <compiler language="c#"

            type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"

            extension=".cs"

            compilerOptions="/d:DEBUG;TRACE;Test"/>

      </compilers>

 

很要命的,對(duì)每一種語(yǔ)言都要加一個(gè)<compiler>,當(dāng)然如果項(xiàng)目中沒(méi)用到相應(yīng)語(yǔ)言,也可以不用理它,可以刪掉。一般C#、VB用得比較的多,我只搞了這二種。

Web.config里設(shè)置過(guò)后就不用在每一個(gè)需測(cè)試的頁(yè)面上去定義編譯指令了,不過(guò)還是沒(méi)有以前爽,以前直接在IDE工具欄上選擇一下配置就行了,現(xiàn)在硬是要寫(xiě)這么多東西,而且主要還是不方便切換。比如我不要在"Test"條件下啟動(dòng)時(shí),我還得跑到Web.config里把上面一段東西注釋掉。
按照MSDN的說(shuō)法,在.NET 2.0下,<compiler>這個(gè)element是deprecated的了,我這種做法好象不是正路。

 

AspNet技術(shù)ASP.NET 2.0下的條件編譯,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 峨山| 澎湖县| 连南| 黎川县| 鄂温| 长垣县| 界首市| 名山县| 双牌县| 大新县| 石嘴山市| 新巴尔虎左旗| 苏州市| 油尖旺区| 萍乡市| 马边| 湖口县| 永兴县| 常山县| 南充市| 博罗县| 施甸县| 手机| 平乡县| 宝丰县| 淄博市| 建始县| 桐柏县| 民县| 营口市| 探索| 永康市| 萨嘎县| 绥芬河市| 洱源县| 张家口市| 长岛县| 永平县| 彭州市| 鄂温| 望都县|