天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Visual Studio 2010 中的代碼約定設置

  軟件約定稱為代碼約定,通過這一約定可以表示代碼正常工作所需的正式條件。 如果方法未按預期收到數據或生成的數據不符合預期的后置條件,代碼約定將導致代碼引發異常。 有關前置條件和后置條件的概述,您可能需要查看我上個月發表的文章 (msdn.microsoft.com/magazine/gg983479)。

  代碼約定是 .NET Framework 4 的一部分,但同樣依賴于 Visual Studio 2010 中的一些功能,例如運行時工具、與 MSBuild 集成以及“項目屬性”框中的屬性頁。 值得注意的是,僅編寫前置條件和后置條件是不夠的。 您還需要為每個項目啟用運行時檢查功能才能使用軟件約定。 您可以通過 Visual Studio 2010 中的“代碼約定”項目屬性頁來完成上述操作。

  在本文中,我將討論您可以查看或選擇的各個選項的預定用途,并深入討論使用代碼約定中的參數驗證可以執行的最常見操作的重寫程序工具和實踐。

  代碼約定屬性頁

  應在所有版本中還是僅在調試版本中實施代碼約定前置條件和后置條件? 實際上,這取決于您對軟件約定概念的理解。 它是設計工作的一部分嗎? 或者,它僅是一種調試措施?

  如果它是設計功能,則沒理由剝離發行版中的約定。 如果它僅是一種調試技術,當在發布模式中進行編譯時,您不希望顯示它。

  在 .NET Framework 中,代碼約定僅是此框架的一部分并且未融入任何語言。 這樣將更容易在項目中按版本配置它們。 因此,通過軟件約定的 .NET Framework 實現,您可以決定實現約定的合適時間和地點。

  圖 1 顯示 Visual Studio 2010 中的屬性頁,通過此頁可以設置軟件約定為應用程序工作的方式。 請注意,此類設置基于項目應用,因此可以根據需要進行調整。

圖 1 Visual Studio 2010 中代碼約定的屬性頁

  您可以選擇選項配置(調試、發布等)并僅對該配置應用設置。 這樣,您可以啟用代碼約定用于調試但不用于發布,而且更重要的是,您可以隨時改變決策。

  運行時檢查

  若要啟用代碼約定,必須選中“執行運行時約定檢查”選項。 如果未選中此選項,則在源代碼中顯示的任何約定說明將可能不會產生任何效果(定義了 DEBUG 符號的任何版本中的 Contract.Assert 和 Contract.Assume 例外,但這不是很重要)。 復選框控制是否在每個編譯步驟結束時觸發重寫程序工具。 重寫程序是一個外部工具,用于對軟件約定進行后處理并修改 MSIL 代碼,以及在合適的位置執行前置條件、后置條件和固定條件檢查。

  但是,請注意,如果您具有類似下面這樣的前置條件,則在關閉重寫程序時會得到運行時斷言失敗:

Contract.Requires<TException>(condition)        
        

NET技術Visual Studio 2010 中的代碼約定設置,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: caoporen超碰在线视频 | 草神被爆漫画羞羞漫画 | 日本亚洲欧洲免费旡码 | 动漫美女被吸奶 | 蕾丝边娱乐网 | 男人吃奶摸下弄进去好爽 | 国产精品久久精品视 | 国产成人精品亚洲线观看 | 99麻豆精品国产人妻无码 | 国产婷婷色一区二区三区在线 | 国产麻豆精品人妻无码A片 国产麻豆精品久久一二三 国产麻豆精品传媒AV国产在线 | 91九色视频在线观看 | 国产区免费在线观看 | 亚洲欭美日韩颜射在线二 | 亚洲精品视频在线观看视频 | 谁有成人网站地址 | 亚洲国产日韩a精品乱码 | 国产成人拍精品视频网 | 国产一区二区三区在线看片 | 欧美色图14p| 亚洲国产成人精品久久久久 | 亚洲AV无码影院在线播放 | 精品久久99麻豆蜜桃666 | 麻豆最新免费版 | 国偷自产视频一区二区99 | 涩涩在线观看免费视频 | 亚洲高清无码在线 视频 | 午夜伦4480yy妇女久久 | 德国xxxx| 久久久精品久久久久特色影视 | 男人插女人动态 | 免费无遮挡又黄又爽网站 | 久久国产乱子伦精品免费M 久久国产露脸老熟女熟69 | 超碰在线公开视频 | 久久热这里只有 精品 | 在线播放真实国产乱子伦 | 亚洲永久精品ww47 | 成人毛片免费播放 | 久久久久久久久免费视频 | 簧片高清在线观看 | 国产产乱码一二三区别免费 |