gpt4 book ai didi

.net - 阻止 .NET 代码调用特定方法?

转载 作者:行者123 更新时间:2023-12-04 15:03:06 28 4
gpt4 key购买 nike

如果调用某个方法,有没有办法创建编译时错误?

例如,我想做的是阻止某个项目中的代码调用 System.Configuration.ConfigurationManager.AppSettings()。如果调用该方法,是否可以标记项目或类文件以引发编译时错误?

我认为没有,所以我认为唯一的方法是生成一个 FxCop 规则来标记这些调用并这样做,但我对其他想法持开放态度。

我正在使用 .NET 3.5。不确定 4.0 代码契约(Contract)是否可以做到这一点。

更新

我专门讨论框架方法,而不是我自己的方法,所以我不能将它们标记为过时。

在这一点上,我不关心反射。

另一个例子是 System.Web.HttpUtility.HtmlEncode,我想找到它并用 Microsoft 的 AntiXss 库替换它,但我想在我的构建服务器上集成某种检查过程,以检查新代码。

最佳答案

您可以write your own rules in FxCop所以也许这是一个选择。

但是,在这种情况下,对于现有的代码库,您可能会发现编辑器中的“ConfigurationManager.AppSettings”的 Ctrl-F(查找)可能会以更少的努力完成同样出色的工作......不过关于 future 的执行您可能会考虑向开发团队发送电子邮件备忘录的更人性化的方式...

正如上面的评论者所强调的那样,对于其他具有类似目标的人来说值得注意的是,如果这是指您自己的代码库中的一个函数(这个问题不是指),您可以使用 [Obsolete]属性。

关于.net - 阻止 .NET 代码调用特定方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8158971/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com