在多个文件中使用指令重复

时间:2014-07-01 14:32:51

标签: c# code-duplication using-directives

我有5个C#文件共有20个using directives。我想摆脱这个代码重复,特别是因为这20个使用指令在逻辑上属于一起。在C或C ++中,我会创建一个包含这20个包含文件的额外头文件。这个额外的头文件充当一个层,然后一次包含20个其他文件。

不幸的是我不知道如何在C#中做到这一点。有什么建议吗?

2 个答案:

答案 0 :(得分:14)

你不能在C#中这样做,因为C#没有预处理器,而C#编译器虽然支持一些看起来像预处理器语法的语法,但是由编译器本身处理,并且编译器不支持include指令。

另外,即使一个文件实际上需要20个使用语句,这对我来说也好像你在一个类中承担了太多的责任。也许通过重构和重构代码库可以更好地实现这一点,从而减少所需的使用指令的数量?

或者,你可以从不同的角度看待它。你说这20个使用指令都“逻辑上属于”,为什么然后20个命名空间呢?听起来很糟糕,因为你已经将一些功能扩展到了太多的命名空间中。

所以无论哪种方式,我都会考虑重组代码。

答案 1 :(得分:1)

简单的回答。如果您的代码文件使用20个常用using语句,则不应将它们分成20个语句。此外,我不会担心这种代码重复。它没有以任何方式影响你的运行时性能,所以它与DRY范式并没有真正相关。