有人可以推荐一种阻止访问特定程序集中特定系统类的方法吗?例如,我可能想要在实现某个不涉及I / O的特定层的类库中阻止FileStream或其他I / O类。它不一定是不可克服的,重点不是打击敌对开发人员,只是为了减少团队成员(包括我自己)的分层错误,并通过打破编译轻松识别这些代码。
答案 0 :(得分:6)
看起来好像你试图“阻止”编码实践而不是执行代码,我觉得你应该看看FxCop和writing some custom rules。
然后您可以integrate FxCop into your build process and cause it to "break the build"。
答案 1 :(得分:1)
如果要阻止I / O,请不要担心阻止单个类,请使用FileIOPermission
并阻止I / O.
答案 2 :(得分:1)
我认为你不能“阻止访问”。但您可以将代码库作为构建的一部分进行分析。我所知道的唯一现有的开箱即用解决方案是NDepend - 它允许您编写类似于SQL的显式规则。但它不是免费的。
答案 3 :(得分:0)
如果您拥有该类库的源代码,您可以为要阻止的所有内容定义别名......这些别名会指向“中性”,在访问时会引发异常......