CA:抑制生成的代码在 VS2010 beta 2 中不起作用的结果

发布于 2024-08-25 03:20:59 字数 119 浏览 7 评论 0原文

我正在尝试对包含实体模型(edmx 文件)的程序集运行代码分析。在项目属性中,我已选中“抑制生成代码的结果”选项,但我仍然收到许多与自动生成的 EF 代码相关的 CA 错误。

有人经历过这个吗?有解决方法吗?

I'm trying to run codeanalysis on an assembly that contains an entity model (edmx file). In project properties I have checked the "Suppress results from generated code" option, but I am still getting a lot of CA errors pertaining to the auto-generated EF code.

Has anyone experienced this? And is there a work-around?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深海蓝天 2024-09-01 03:20:59

只需将属性放在类定义中即可。

但如何做到这一点,因为您的文件随时可能被覆盖。使用单独的文件,因为所有生成的类都是部分类。打开一个单独的文件,并编写如下内容:

[GeneratedCode("EntityModelCodeGenerator", "4.0.0.0")]
public partial class YourEntitiesContextName : ObjectContext
{
}

这将跳过对特定生成的类的代码分析。例如,StyleCop 更智能,不会触及名称中包含 .designer/.generate 部分的文件或名称中包含 generate 单词的区域。

Just put the attribute on your class definition.

But how to do it, since your file can get overridden any time. Use a separate file, since all generated classes are partial classes. Open a separate file, and write something like:

[GeneratedCode("EntityModelCodeGenerator", "4.0.0.0")]
public partial class YourEntitiesContextName : ObjectContext
{
}

This will skip code analysis on your particular generated class. StyleCop for instance is more smart and doesn't touch files that have .designer/.generated part in their name or regions that have generated word in their name.

半城柳色半声笛 2024-09-01 03:20:59

好吧,“抑制生成代码的结果”实际上意味着“不要使用 GenelatedCodeAttribute 查看类型”。 EF 的代码生成器历史上未添加此功能(尽管我已向团队建议过)。但是如果您使用自定义 T4

Well, "Suppress results from generated code" really means "Don't look at types with GeneratedCodeAttribute". EF's code generator hasn't added this, historically (though I've suggested it to the team). But you can add it if you use custom T4.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文