我想了解FxCop CA2122消息(可能在禁用可怜的东西之前),并且我已经明确地超越了我对.NET CAS的理解。我是否需要担心完全信任的.EXE链接需求?
该应用程序是用AllowPartiallyTrustedCallers标记的.EXE,而不是。我们从代码分析中得到了CA2122警告,抱怨我们没有将LinkDemands从最低级别的调用向上传播到本身具有LinkDemands的方法。
很明显,我们可以将LinkDemands放在调用者上,然后调用者的调用者ad-infinitum。这看起来完全没有意义,因为对这个代码的每一次调用都是完全可信的,因此(AIUI)无论如何都会满足每个链接需求。 Eric Lippert似乎认为这样做也是非常危险的。
所以:
我缺少什么组件级属性说“这个代码将只在完全信任运行”? (我认为没有AllowPartiallyTrustedCallers'暗示这一点,但可能不适用于.EXE)
或者我应该关闭该CA警告并继续前进?我不喜欢正确地理解他们之前,我禁用它们...
更新:有人问我,我们正在使用的框架版本 - 这是2.0RTM,这是极难得到升级过去的这一点,因为它是在XPe平台上。
感谢您的理解 - 我需要更多地了解它,但是如果您允许您提供更有用的信息,我们将使用.NET 2.0。 – 2010-11-05 17:05:34
我编辑了我早期的回复,以提供推荐的.NET 2.0方法。 – 2010-11-05 17:22:17