微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 实体框架代码中有效的原始属性是什么?

当我尝试将列映射到我的模型类中的char数据类型时,我会收到一个错误

The property ‘[ColumnName]’ is not a
declared property on type ‘[ClassName]’.
Verify that the property has not been
explicitly excluded from the model by
using the Ignore method or
NotMappedAttribute data annotation.
Make sure that it is a valid primitive
property.

EF Code First的有效原始类型是什么?

解决方法

这很有趣,但你真的不能映射char属性.我只是检查它,如果你想在数据库中有char(1),你必须使用带有以下映射的字符串属性
modelBuilder.Entity<MyEntity>()
            .Property(p => p.MyProperty)
            .HasMaxLength(1)
            .IsFixedLength()
            .IsUnicode(false);

这不仅仅是Code-first的问题.这是整个EF限制,因为EDMX设计师也不显示字符类型.我认为允许的类型将与EDMX的CSDL reference中所述相同,因为代码首先只是围绕相同的映射基础设施进行包装.

原文地址:https://www.jb51.cc/csharp/94631.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐