2012-04-11 70 views
0

在我的公司,我们使用MVC.NET和实体框架来执行SQL连接。我想知道是否有方法来创建一个类的自定义属性,如果方法的返回类型不是IEnumberable,将会创建警告?这个想法是为了避免开发人员违反集合使得函数不那么通用。自定义.NET属性检查方法返回类型

+1

你能否让你的问题更清楚些? *“默认为使功能不那么通用的集合”*是什么意思? – 2012-04-11 17:18:28

+0

该方法如何与您想要修饰的类相关联? – 2012-04-11 17:19:06

回答

1

.Net属性在运行时进行评估,并且在开发人员生成代码时发出警告时不会有用。您可以查看静态分析工具,如FxCop/StyleCop,以便在编译期间显示这些警告。在你的具体情况下,你可能必须写一个自定义规则来做检查。

+0

+1我只是写了一个答案,说完全一样的东西! (猜我错过了那里)。在这里添加一个链接来指导如何编写这样的规则:http://blogs.msdn.com/b/codeanalysis/archive/2010/03/26/how-to-write-custom-static-code -analysis-rules-and-integrate-them-into-visual-studio-2010.aspx - 我认为这样做会更适合你想做的事情(尽管它可能很难完全实现 - 即检查返回IEnumerable 实际上是有效的 - 值得一点调查,虽然我会说)。 – kmp 2012-04-11 17:39:37

0

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