枚举在DataSet中

时间:2009-06-23 23:31:46

标签: c# enums dataset

我正在使用DataSet将我的C#程序与SQL数据库连接起来。我希望其中一列是枚举,我希望它在我的代码中充当枚举。我怎么能这样做?

5 个答案:

答案 0 :(得分:8)

我并不是要破坏每个人的泡泡,但你可以使用强类型数据集轻松地将整数映射到枚举。我一直这样做。我没有在这里输入整个内容,而是创建了一个entry on my Blog,详细描述了如何实现这一目标。

答案 1 :(得分:0)

我认为你不能。 SQL Server没有枚举的概念。

答案 2 :(得分:0)

我建议使用位于存储库层顶部的ApplicationService层。然后在ApplicationService类中(考虑此类的适当名称),您可以将从存储库层返回的数据转换为POCO对象中的相应枚举值。

答案 3 :(得分:0)

您可以尝试使用strongly typed dataset

答案 4 :(得分:0)

技术上你不能。枚举是静态类型的,它们被设计为在编译时知道所有值时使用。虽然有一些解决方法,但我强烈建议你不要这样做 查看一个不可修改的数据集,这将给出Enum的大部分好处,并且可以即时创建。

虽然数据不能存储为枚举,但只要数据库列中的数据是整数类型,它们就可以用作花式过滤器。如果这就是你所追求的那个问题,这是一个完全不同的问题。转到MSDN page并阅读Enum's。