Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.net 4.0实体数据模型Mysql未正确处理Mysql枚举_Asp.net_Mysql_Linq_Linq To Sql - Fatal编程技术网

ASP.net 4.0实体数据模型Mysql未正确处理Mysql枚举

ASP.net 4.0实体数据模型Mysql未正确处理Mysql枚举,asp.net,mysql,linq,linq-to-sql,Asp.net,Mysql,Linq,Linq To Sql,我刚刚开始学习,用MySql测试ADO.net实体数据模型-一切都很顺利,除了我注意到一件事 在我的MySql表中,我创建了一个枚举列类型。当ASP.net创建模型类时,枚举被视为字符串而不是枚举-是否有办法解决此问题 MySql中的UserStatus列是一个具有两个潜在属性(已启用和已禁用)的枚举,但asp.net将其视为字符串值: user.UserStatus=“已启用” 我希望看到这方面的东西。。。 user.UserStatus=UserStatus.Enabled 谢谢 Loren

我刚刚开始学习,用MySql测试ADO.net实体数据模型-一切都很顺利,除了我注意到一件事

在我的MySql表中,我创建了一个枚举列类型。当ASP.net创建模型类时,枚举被视为字符串而不是枚举-是否有办法解决此问题

MySql中的UserStatus列是一个具有两个潜在属性(已启用和已禁用)的枚举,但asp.net将其视为字符串值: user.UserStatus=“已启用”

我希望看到这方面的东西。。。 user.UserStatus=UserStatus.Enabled

谢谢


Loren

没有enum sql类型,至少不是标准类型,这意味着它是非标准的,您很难找到任何正确支持它的框架

更糟糕的是,实体框架目前也不支持代码中的枚举类型。有一些黑客和变通办法,但你会发现它们是痛苦的,不值得。出于所有目的,MySQL枚举都是字符串对象。不过,您可能需要发出一些自定义sql来获取枚举类型以填充列表框


哦,仅供参考:

这太不幸了!在这个场景中,你对处理“类似枚举”的值有什么建议吗?我只是喜欢使用枚举,因为它们为我使用的公共字段的赋值提供了一个简单易懂的方法,而不必记住它们所有的字符串可能性