.net - 枚举是引用类型还是值类型?

标签 .net enums value-type reference-type

我在 EntityFramework 中使用了 Enum 属性5类,
但是在数据库中这个字段是可以为空的。 Visual Studio 给出了此属性必须是可为空属性的错误。我的问题是:枚举是引用类型还是值类型?

最佳答案

System.Enum是引用类型,但任何特定的枚举类型都是值类型。同理,System.ValueType是引用类型,但从它继承的所有类型(除了 System.Enum )都是值类型。

所以如果你有一个枚举 Foo并且你想要一个可为空的属性,你需要属性类型为 Foo? .

关于.net - 枚举是引用类型还是值类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14561338/

相关文章:

c# - .NET 函数中的线程永远不会返回

typescript - TypeScript 字符串枚举中的反向映射

java - 类中的枚举助手 (Java)

swift - 如何创建一个返回整数元组的枚举函数?

.net - 是否应该将 "Using"用于异步对象?

c# - 如何读取时间值,然后将其插入 TimeSpan 变量

c# - "foreach"是否会导致Linq重复执行?

.net - 为什么.NET 中没有 RAII?

C# 将结构数组复制到 double 组

c# - 如何检查泛型方法参数是否为值类型?