是否有任何方法可以禁用.NET 4中的“动态”关键字?

我认为,如果使用动态关键字,则VS2010的代码分析功能可能会使构建失败,但我无法罚款。

有帮助吗?

解决方案

这是C#4.0语言的一部分,因此不是真的。

您可以使用 fxcop 不过要寻找它,如果构建遇到它,则会使其失败。

样式警察可能会起作用:

http://code.msdn.microsoft.com/sourceanalysis

这是一个链接,谈论同一问题以及样式警察如何成为答案。还有一篇关于如何获得FX Cop来寻找动态关键字的文章,尽管它并不完美。

http://social.msdn.microsoft.com/forums/en/vstscode/thread/8ce407ba-bdf7-422b-bbcd-ca4701c3a76f

其他提示

目标.NET 1.0? :-)

或进行代码评论。

(或者,要少得多,编写自定义FXCOP或CA规则应该不允许使用动态应该很容易)

您现在不只是为C ++宏杀死吗? :-)

动态关键字不是邪恶的,而是使用它。

它导致代码错误,您只能在运行时找到。应该不惜一切代价避免这种情况。运行时错误很糟糕。编译时间错误很好。

您可以使用以下内容来设置自己的标准。http://joel.fjorden.se/static.php?page=codestyleenforcer

删除参考 Microsoft.CSharp.dll, ,我认为也许所有的用途 dynamic 将无法编译。

我不确定我了解对动态关键字的不合理恐惧。在匿名变量上有这种类型的歇斯底里,而.NET 3.5的VAR关键字只是愚蠢的,因为它们是合法的静态定义类型。

动态关键字具有高度专业的目的,我不明白为什么任何人都希望在不了解原因的情况下使用它。然而,可以通过1个团队会议来解决这种情况,从而解释了.NET 4的一些新功能,包括动态关键字。我认为您更像是团队的高级或高级领导。如果他们觉得需要使用动态关键字来首先见到您,应该很容易告诉您的团队。

这正是我给团队给出的说明,因为我发现我们不太可能使用动态关键字,因为我们不编写COM Interop活动。过去,我会将任何类型的动态代理使用推荐给像Linfu或Castle这样的已建立库,并将动态代理的实现供您使用或不使用动态关键字。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top