码迷,mamicode.com
首页 > 其他好文 > 详细

CORE EF The expected type was 'System.String' but the actual value was of type 'System.Guid'.

时间:2019-01-15 18:29:55      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:type   core   开发   并且   net   长度   解决   设置   自动   

【小提示】使用.NET Core EF 开发时,当你的数据库实体中添加了“Id”的字段时,会默认做为主键。

在设置数据库字段类型时如果设置了varchar或者char字段的长度为36时(36是微软GUID的长度),并且数据存储的数据正好是Guid字符串时,在使用EF查询数据库时EF会自动把数据类型转为Guid类型,如果你的数据库实体类中对应的字段正好是string类型时会抛出以下异常:

An exception occurred while reading a database value for property XXX.Id. The expected type was System.String but the actual value was of type System.Guid.

 

1、修改字段类型为Guid

2、修改数据库字段长度

以上两个方法都可以解决该异常

CORE EF The expected type was 'System.String' but the actual value was of type 'System.Guid'.

标签:type   core   开发   并且   net   长度   解决   设置   自动   

原文地址:https://www.cnblogs.com/minther/p/10273410.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!