2010-11-30 53 views
1

在我写给朋友的程序中,我们得到了这个警告:CA2109。 看过MSDN后,我很困惑,如果这是我需要关心或不关心的事情。CA2109 - 忽略或不忽略 - 这就是问题

MSDN VS2008: http://msdn.microsoft.com/en-us/library/ms182312(v=VS.90).aspx

MSDN VS2010: http://msdn.microsoft.com/en-us/library/ms182312.aspx

这些2个版本之间的差别是这样的部分,其被从VS2008 MSDN采取但在VS2010 MSDN不存在:

注意此规则仅适用于以前版本的.NET Framework 2.0版。您可以在.NET Framework 2.0及更高版本中禁止此警告。在这些更新的版本中,运行时会自动确保委托的创建者在堆栈散步期间处于调用堆栈中以满足安全需求。

有什么建议吗?

编辑:只是为了澄清阅读DGH答案 - 正如MSDN2008中的说明中所述,我可以忽略它,因为编译器正在处理此问题。我的问题是在VS2010中,这个笔记不存在的情况。

回答

0

这是一个潜在的安全问题。如果代码仍然编译并运行(哪些警告不应该阻止),那么你肯定可以忽略它的一个动作。但是,如果您希望为您的程序提供最高级别的安全性,则应该考虑按照MSDN文章的建议解决此问题。

+0

我不认为你是100%正确与你回答。正如MSDN2008中的说明所述,我可以忽略它,因为编译器正在处理这个问题。我的问题是在VS2010中,这个笔记不存在的情况。 – 2010-12-01 00:01:27