C# 过时的库类
防止C#程序员使用特定库类的最佳方法是什么C# 过时的库类,c#,C#,防止C#程序员使用特定库类的最佳方法是什么 类来自外部程序集,因此不可能对其使用[过时]属性。我尝试使用Resharper自定义模式,但它似乎不支持泛型类型。修补库方法/类(Reflector有几个插件)-添加DeprecatedAttribute,或修改其代码以引发异常,例如 您还可以进行一个特殊的单元测试,该测试在CI服务器上运行,如果指定了特定的不推荐项用法,则会失败。您可以使用ildasm分解库,添加[过时(true)]属性,并使用ilasm重新组装 您可能会找到一些装配编辑工具,例如与
类来自外部程序集,因此不可能对其使用
[过时]
属性。我尝试使用Resharper自定义模式,但它似乎不支持泛型类型。修补库方法/类(Reflector有几个插件)-添加DeprecatedAttribute
,或修改其代码以引发异常,例如
您还可以进行一个特殊的单元测试,该测试在CI服务器上运行,如果指定了特定的不推荐项用法,则会失败。您可以使用ildasm分解库,添加
[过时(true)]
属性,并使用ilasm重新组装
您可能会找到一些装配编辑工具,例如与Reflector一起试用
请注意,若编辑程序集,将丢失所有签名和内容。完全删除它?在库中,project中使用的其他类很少。库是第三方的。哦,你没有库的代码吗?这是一个有趣的问题。对我们来说,有效的方法是巧妙地要求他不要使用它:)告诉他们,如果他们使用它,你会用棍子打他们吗?我想你的意思是说“代码分析”而不是单元测试。单元测试是为了功能,而代码分析是为了对代码本身实施规则。这是一个可能需要自定义代码分析规则的实例。