2011-02-18 55 views
2

我得到了一個ContractClassFor,它通過代碼分析生成很少的警告。CodeAnalysis和CodeContracts組合

實施例:

Microsoft.Usage: 'IDocumentServiceContracts.GetItems(打印隊列,INT,INT)' 的參數 'PAGENUMBER' 從未使用過。刪除參數或在方法體中使用它。

對於合同類中每個方法中的每個參數,我必須使用SupressMessage嗎?或者是否有可能以另一種方式擺脫警告?除了合同類以外,我確實需要所有類的警告。

回答

1

一個簡單的方法就是將[GeneratedCode] attribute放在它們上面,完全禁用代碼分析。這不是真正的正確的語義,但它完成了這項工作。

SuppressMessage在這種情況下不是很好,因爲你不能將它應用到類中。您必須將其應用於每種方法,並且會變得混亂。