CodeAnalysis 和 CodeContracts 组合
我得到了一个 ContractClassFor
,它通过代码分析生成了少量警告。
例子:
Microsoft.Usage:从未使用“IDocumentServiceContracts.GetItems(PrintQueue, int, int)”的参数“pageNumber”。删除该参数或在方法体中使用它。
我是否必须对合约类中每个方法中的每个参数使用 SupressMessage
?或者是否可以通过其他方式消除警告?我确实希望对除合同类之外的所有类发出这些警告。
I got a ContractClassFor
which generates a low of warnings with Code Analysis.
Example:
Microsoft.Usage : Parameter 'pageNumber' of 'IDocumentServiceContracts.GetItems(PrintQueue, int, int)' is never used. Remove the parameter or use it in the method body.
Do I have to use SupressMessage
for each parameter in each method in the contracts class? Or is it possible to get rid of the warnings in another way? I do want those warnings for all classes except contract classes.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一种简单的方法是完全禁用合同类的代码分析,方法是将
[GenerateCode]
属性。这并不是真正正确的语义,但它确实完成了工作。SuppressMessage 在这种情况下不太好,因为您无法将其应用于类。您必须将其应用于每个方法,这会变得混乱。
A simple way is just to disable Code Analysis entirely for your contract classes, by putting the
[GeneratedCode]
attribute on them. It's not really the right semantics but it does the job.SuppressMessage is not very good in this scenario, since you can't apply it to classes. You'd have to apply it to each method, and that gets messy.