【问题标题】:Custom .NET Attribute to Check Method Return Type用于检查方法返回类型的自定义 .NET 属性
【发布时间】:2012-04-11 17:14:14
【问题描述】:

在我的公司,我们使用 MVC.NET 和 Entity Framework 来执行 SQL 连接。我想知道是否有一种方法可以在类上创建自定义属性,如果方法的返回类型不是 IEnumberable,则会创建警告?这样做的目的是避免开发人员默认使用集合,从而降低函数的通用性。

【问题讨论】:

  • 你能把你的问题说清楚一点吗? “默认为一个集合使函数不那么通用”是什么意思?
  • 方法和你要装饰的类有什么关系?

标签: asp.net asp.net-mvc attributes custom-attributes


【解决方案1】:

.Net 属性是在运行时评估的,并且在开发人员大量编写代码时对发出警告没有用处。您可能可以查看 FxCop / StyleCop 等静态分析工具,以便在编译时显示这些警告。在您的特定情况下,您可能必须编写一个自定义规则来进行检查。

【讨论】:

  • +1 我只是在写一个答案,说的完全一样! (我想我错过了那里)。添加到这里是一个如何编写这样一个规则的链接:blogs.msdn.com/b/codeanalysis/archive/2010/03/26/… - 我认为这样做更适合你想要做的事情(尽管它可能很难完全实现 - 即检查返回IEnumerable 实际上是有效的——尽管我会说值得一点调查)。
【解决方案2】:

编写一个单元测试来检查返回类型,而不是属性或其他任何东西。这样你就不会丑化你的代码了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-11
    • 2021-05-16
    • 2020-02-06
    • 1970-01-01
    相关资源
    最近更新 更多