【发布时间】:2013-05-21 13:36:48
【问题描述】:
这一要求是由同行开发人员将不同类型的扩展方法混合到一个 xxxExt 类中的悲痛驱动的。 它仍然有效,因为编译器通过查看他导入的命名空间来处理分辨率。但是当涉及到重叠类型时,它很烦人并且不容易维护。
是否有可能限制可以在特定 xxExt 类中编写的类型扩展?循环手动规则效果不佳...如果没有编译器级别的限制,可能类似于静态代码分析?
代码(我想在这个类中限制的是 IsActiveRisk 方法)。
public static class TradeDataExt{
public static bool IsActiveTrade(this TradeData tradeData){...}
public static bool IsActiveRisk(this RiskData riskData) {...}
}
这更像是一个“想要的”功能,不确定是否可能。 评论/建议会很有帮助。
【问题讨论】:
-
为什么不把这些作为
public bool IsActive {get {...}}放在TradeData和RiskData类中?这对我来说没有意义。为什么你已经控制的类的扩展? -
+1 @HighCore 建议
-
确实有道理...我可能无法访问 TradeData/RiskData 库!!
标签: c# extension-methods