我正在使用 C# 和 .NET Framework 4.7 开发解决方案。
我有一个必须在许多项目之间共享的枚举。我只需要共享枚举,而不是该项目中的其他类。
我是否需要使用枚举创建类库以便在其他项目之间共享它?
我认为这太过分了:仅为枚举创建一个项目。
这个枚举类不经常更新。现在我在两个不同的项目中有这个枚举的两个副本。现在问题出现了,当我必须更新它时。
最佳答案
I think this is too much: create a project for an enum only.
如果您已经提出了一个答案,那么这不是引用中性问题。 :)
其次,这种题材还是上https://codereview.stackexchange.com/比较好恕我直言。
但是对于问题:如果将项目作为通常的数据契约处理,则可以避免使用单个枚举提取项目:在两侧定义枚举,并在两者之间实现映射。
当然它有缺点:您需要复制您的枚举并进行一些序列化和反序列化。这样做的简单方法是传输底层 int 值或枚举字段名称并在另一端重新映射。
您没有提供任何进一步的细节,所以我无法判断这是否真的是更好的解决方案,但通常如果不涉及(可能只是架构上的)远程组件,那么我会选择单独的项目(可能名为 Common或模型),可供各方引用。但是,我很难想象只有一个枚举是唯一要存储的类型的数据模型。
关于c# - 在项目之间共享枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50597826/