【发布时间】:2011-11-16 21:27:57
【问题描述】:
如果调用某个方法,有没有办法创建编译时错误?
例如,我想做的是阻止某个项目中的代码调用 System.Configuration.ConfigurationManager.AppSettings()。有没有办法标记项目或类文件以在调用该方法时引发编译时错误?
我不认为有,所以我认为唯一的方法是生成一个 FxCop 规则来标记这些调用并这样做,但我对其他想法持开放态度。
我正在使用 .NET 3.5。不确定 4.0 代码合约是否可以做到这一点。
更新
我说的是框架方法,不是我自己的,所以我不能将它们标记为过时。
此时我并不关心反射。
另一个例子是 System.Web.HttpUtility.HtmlEncode,我想找到它并用 Microsoft 的 AntiXss 库替换它,但我想在我的构建服务器上集成某种检查过程来检查新代码。
【问题讨论】:
-
是否也不允许通过反射调用此方法?
-
如果它是您自己的程序集并且您可以重新编译,您可以使用 Obsolete 属性,如果这有帮助的话。
-
如果您不希望他们使用它,为什么要开始?
-
@AustinSalonen,看来这是关于框架方法的。
-
@svick:给定 that 框架方法,您必须添加一个特定的引用,这样问题才成立。
标签: .net compiler-errors fxcop