块访问类库中的系统类

本文关键字:系统 访问 类库 | 更新日期: 2023-09-27 18:03:05

谁能推荐一种方法来阻止访问特定程序集中的特定系统类?例如,我可能想要阻止类库中的FileStream或其他I/O类,这些类实现了不应该涉及I/O的特定层。它不一定是不可克服的,关键不是要对抗敌对的开发人员,只是为了减少团队成员(包括我自己)的分层错误,并通过破坏编译轻松识别此类代码。

块访问类库中的系统类

听起来好像你试图"阻止"编码实践而不是执行代码,那么我认为你应该看看FxCop并编写一些自定义规则。

你可以把FxCop集成到你的构建过程中,让它"破坏构建"。

我不认为你可以'阻止访问'。但是您可以将代码库作为构建的一部分进行分析。我所知道的唯一现成的解决方案是NDepend——它允许您编写像SQL这样的显式规则。

如果你想阻塞I/O,不要担心阻塞单个类,使用FileIOPermission和阻塞I/O

如果你有那个类库的源代码,你可以为你想要阻止的一切定义别名…这些别名将指向一些"中立"的东西,当访问时抛出异常…