c# – 使用Linq-to-sql在sql-server中存储枚举

前端之家收集整理的这篇文章主要介绍了c# – 使用Linq-to-sql在sql-server中存储枚举前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何使用 linq-to-sqlsql-server中存储枚举?

在我的代码中,我最终有了很多转换和从int的转换.
必须有一个更好的方法.我错过了什么?

sqlItem.enumValue = (int)myEnumValue;
...
myEnumValue = (MyEnumType)sqlItem.enumValue

sql Server或LINQ将值作为字符串或int存储在数据库中无关紧要,我只想避免所有这些类型转换都在我的代码上洒下来.

可以通过扩展方法解决我的linq-to-sql-classes,如果是这样的话呢?

解决方法

您可以在DBML编辑器中使用来自数据库的类型的映射.

假设您在Visual Studio中工作(执行这些操作的顺序可能会引起高度的刺激,因为在打开属性时,它会自动在编辑器中取消选择当前的选择,等等):

>打开DBML编辑器,
>打开“属性”视图/选项卡
>在“类型”字段中指定类型.

根据我的经验,只需输入< namespace>.< type>的形式.并不总是成功,我认为这是@leppie所指的细微差别;为了安全起见,请使用全局::< namespace>.< type&gt ;.

猜你在找的C#相关文章