首页 新闻 会员 周边 捐助

ef这是什么原因

0
悬赏园豆:5 [已解决问题] 解决于 2020-08-03 14:47

我实体和表结构都有了这个属性和字段

EF
问题补充:

public class ArticleMap : IEntityTypeConfiguration<Article>
{
public void Configure(EntityTypeBuilder<Article> builder)
{
builder.ToTable("T_Article");
builder.HasKey("article_id");
builder.Property(s => s.Id).HasColumnName("article_id");
builder.Property(s => s.Author).HasColumnName("article_author");
builder.Property(s => s.Title).HasColumnName("article_title");
builder.Property(s => s.TextSection).HasColumnName("article_textsection");
builder.Property(s => s.Content).HasColumnName("article_content");
builder.Property(s => s.ArticleType).HasColumnName("article_articletype");
builder.Property(s => s.PraiseCount).HasColumnName("article_praisecount");
builder.Property(s => s.BrowserCount).HasColumnName("article_browsercount");
builder.Property(s => s.CommentIds).HasColumnName("article_comments");
builder.Property(s => s.IsDraft).HasColumnName("article_isdraft");
builder.Property(s => s.IsSendEmail).HasColumnName("article_sendemail");
builder.Property(s => s.CreateTime).HasColumnName("article_createtime");
builder.Property(s => s.UpdateTime).HasColumnName("article_updatetime");
}
}

灬丶的主页 灬丶 | 初学一级 | 园豆:3
提问于:2020-08-03 14:16
< >
分享
最佳答案
0

builder.HasKey("article_id");改成builder.HasKey("Id");试试

收获园豆:4
会长 | 专家六级 |园豆:12463 | 2020-08-03 14:40

不想放到实体类里面,觉得里面太乱了

灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:41

@灬丶: builder.HasKey("article_id");改成builder.HasKey("Id");试试,我盲猜的

会长 | 园豆:12463 (专家六级) | 2020-08-03 14:42

@灬丶: 你表建的时候为什么加那么老多下划线,用驼峰多好,都不用写这些个映射了

会长 | 园豆:12463 (专家六级) | 2020-08-03 14:43

如果还不行,把builder.HasKey("article_id");放了最后试试

会长 | 园豆:12463 (专家六级) | 2020-08-03 14:44

@会长: 谢了,我换成 builder.HasKey(s=>s.Id)就可以了,原来是映射属性,从来没用过EF

灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:46

@会长: 你么用EF一般是code first还是 db first?为啥我觉得两个都不好用,还是觉得数据库建表和实体分开舒服点,可能是我用其它的orm用多了吧

灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:57

@灬丶: 我也很少用,我记得我正式在公司项目用过一次,忘了是不是code first,我个人觉得code first也没啥大好处。

会长 | 园豆:12463 (专家六级) | 2020-08-03 15:22
其他回答(2)
0

哦,你觉得是你错的可能性大一点,还是EF错的可能性大一点呢?

爱编程的大叔 | 园豆:30844 (高人七级) | 2020-08-03 14:25

我也不知道这是啥原因,google了好久

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:26
0

实体和表结构没对上吧,用的code first还是db first?

收获园豆:1
猝不及防 | 园豆:2878 (老鸟四级) | 2020-08-03 14:30

db

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:31

错了 code first,我都仔细对了好久

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:32

@灬丶: code first不用对啊,自己生成的,你看看是不是数据类型或者配置里面有了忽略之类的?

支持(0) 反对(0) 猝不及防 | 园豆:2878 (老鸟四级) | 2020-08-03 14:34

@猝不及防: 不是自动生成的,数据库和实体结构我没有关系,都是手动映射的
public class ArticleMap : IEntityTypeConfiguration<Article>
{
public void Configure(EntityTypeBuilder<Article> builder)
{
builder.ToTable("T_Article");
builder.HasKey("article_id");
builder.Property(s => s.Id).HasColumnName("article_id");
builder.Property(s => s.Author).HasColumnName("article_author");
builder.Property(s => s.Title).HasColumnName("article_title");
builder.Property(s => s.TextSection).HasColumnName("article_textsection");
builder.Property(s => s.Content).HasColumnName("article_content");
builder.Property(s => s.ArticleType).HasColumnName("article_articletype");
builder.Property(s => s.PraiseCount).HasColumnName("article_praisecount");
builder.Property(s => s.BrowserCount).HasColumnName("article_browsercount");
builder.Property(s => s.CommentIds).HasColumnName("article_comments");
builder.Property(s => s.IsDraft).HasColumnName("article_isdraft");
builder.Property(s => s.IsSendEmail).HasColumnName("article_sendemail");
builder.Property(s => s.CreateTime).HasColumnName("article_createtime");
builder.Property(s => s.UpdateTime).HasColumnName("article_updatetime");
}
}

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:36

@灬丶:
你试试先
builder.Property(s => s.Id).HasColumnName("article_id");

builder.HasKey("article_id");

支持(0) 反对(0) 猝不及防 | 园豆:2878 (老鸟四级) | 2020-08-03 14:40

@猝不及防: 谢了,我换成 builder.HasKey(s=>s.Id)就可以了,原来是映射属性,从来没用过EF

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:47

@猝不及防: 你么用EF一般是code first还是 db first?为啥我觉得两个都不好用,还是觉得数据库建表和实体分开舒服点,可能是我用其它的orm用多了吧

支持(0) 反对(0) 灬丶 | 园豆:3 (初学一级) | 2020-08-03 14:57

@灬丶: code first,这样就不需要管数据库了

支持(0) 反对(0) 猝不及防 | 园豆:2878 (老鸟四级) | 2020-08-03 14:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册