在模块之间转换枚举

Ice*_*man 5 c c# enums module

我在一个模块(A)中有一个枚举定义,例如SUCCESS = 0,INVALID_REQ = 1等.然后我有另一个dll(模块B),它有自己的状态枚举集.一旦我们在A中添加了一个新的枚举值,我们就必须手动将它添加到B,因为A在.NET中,B是C代码.此外,A中的枚举只是B中状态枚举的一部分(B除了A的状态外,还有自己的内部状态).这似乎是这两个模块之间非常紧密的耦合.有什么建议可以减少它们的耦合吗?谢谢!

小智 2

为什么不编写一个简单的脚本来在构建过程中根据文件生成这些枚举?如果你真的想将它们分开,你需要让某人成为主人并将其内容暴露给另一方..可能使用RCW..