天天躁日日躁狠狠躁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 中的代碼約定設置,轉載需保留來源!

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

主站蜘蛛池模板: 国产精品成人免费视频99 | 小处雏一区二区三区 | 国产精品18久久久久久欧美 | 97人人爽人人爽人人人片AV | 亚洲欧美日韩精品久久奇米色影视 | 米奇在线8888在线精品视频 | 恋夜影视列表免费安卓手机版 | 爽死你个放荡粗暴小淫货漫画 | 色柚视频网站ww色 | 火影忍者高清无码黄漫 | 婷婷开心激情综合五月天 | xxx88中国| 久久99热成人精品国产 | 国产成人在线视频 | 精品国产成人AV在线看 | 欧美一区二区激情视频 | 国产精品色吧国产精品 | 开心成人社区 | 男人和女人全黄一级毛片 | 九九热这里都是精品 | 99久久综合精品免费 | 久久国产视频网站 | 欧美激情一区二区三区视频 | 国产午夜精品不卡视频 | 伦理片 qvod 伦理片 a在线线版韩国 | 久草色香蕉视频在线 | 国产精自产拍久久久久久蜜 | 成人小视频免费在线观看 | 亚洲精品国产熟女久久久 | 办公室韩国电影免费完整版 | 囯产精品麻豆巨作久久 | 人人在线碰碰视频免费 | 六月婷婷国产精品综合 | 久久综合给合久久狠狠狠… | 成熟YIN荡美妞A片视频麻豆 | 成人在线视频在线观看 | qvod快播在线观看 | 翁公咬着小娇乳H边走边欢A | 精品国产影院 | 精品亚洲欧美中文字幕在线看 | 欧美亚洲日韩国码在线观看 |