【发布时间】:2015-05-29 20:16:09
【问题描述】:
发生了一些奇怪的事情,我无法再使用 .net 实体模型从我的 mysql 数据库中获取 GUID 类型。
不久前,我创建了一个使用 Guid 作为 ID 的数据库。我使用实体框架创建了与该数据库的连接,一切正常。
但是我前段时间丢失了数据库,我不得不重新创建它,但是现在,由实体框架模型创建的类有一个字符串作为 ID,而不是以前的 GUID。
我需要在我的 mysql 数据库中创建我的 ID 的类型,以便我可以简单地执行以下操作:
Image.ID = Guid.NewGuid();
EntityModel.Image.Add(Image);
EntityModel.SaveChanges();
这曾经可以正常工作,现在我(显然)收到一个错误:“无法将类型 'System.Guid' 隐式转换为 'string'”
我不记得我曾经是如何做到的,我想知道这里的人是否可以提供帮助。 我确实读过有关 UUID() 的信息,但我不是这样做的。 不知何故,我感觉 mysql 更新了,不知何故它不再可能,但这对我来说似乎很奇怪。
我确实对此进行了研究,并看到很多人建议在 mysql 中将 id 设为二进制类型并将 Guid 转换为二进制形式并存储它。我希望不要编写一个转换类来将 Guid 隐式转换为二进制...
【问题讨论】:
标签: c# mysql linq entity-framework