我目前在ASP.NET MVC應用程序中使用Microsoft Code Contracts,但沒有任何問題,但似乎無法使其在基本ASP.NET網站中運行。我不完全確定它是用這種類型的項目來工作的(儘管它不應該),所以我想把它提供給每個人。Microsoft代碼合同能否與ASP.NET網站一起使用?
我可以編譯契約,但代碼會跳過它們,因爲我假設它沒有像其他項目類型(即ASP.NET MVC)那樣通過屬性頁啓用。我在我的ASP.NET網站上進入了項目的屬性頁面(顯示一個對話框而不是典型的屬性頁面),但它不會產生相同的菜單選項,因此沒有專門的部分代碼合同。
此外,我在一個類庫項目中正確啓用了微軟代碼合同,該項目用於將我的業務邏輯從網站中分離出來。合同可以很好地編譯,但是當違反合同時,它會拋出一個沒有內部異常的錯誤信息"Exception of type 'System.ExecutionEngineException' was thrown"
錯誤。我的合同指定了違規時顯示的消息,但它並不在例外之內。它只是暫停執行該進程(我相信這是Microsoft代碼合同的默認功能)。
我找不到任何明確指出特定項目類型可以或不可以(或不應該)與合同一起使用的地方,所以我只想看看是否有人有此問題。
感謝您的幫助!
有同樣的問題,你有沒有達到它的底部? – Kieron 2011-09-01 13:24:33