首页 新闻 赞助 找找看

EF CodeFirst

0
悬赏园豆:10 [已解决问题] 解决于 2019-07-12 13:54

今天做了一个实验

public class Class1
{
public string ID { get; set; }
public List<string> List { get; set; }
}

 

然后用ef生成数据库的时候发现只生成只有ID一个字段的Class1表,那么存的时候List存不存呢?

为什么只生成一个表,而不生成两个表呢?我的目的是ID,List都能存到,怎么改呢??

猝不及防的主页 猝不及防 | 老鸟四级 | 园豆:2731
提问于:2018-08-03 20:47
< >
分享
最佳答案
0

可以序列化存储,

收获园豆:10
黄昏MMM | 菜鸟二级 |园豆:320 | 2018-08-10 14:25
其他回答(5)
0

因为数据库里没有数组类型.等什么时候数据库支持数组类型了.

你的想法就能实现了.

吴瑞祥 | 园豆:29449 (高人七级) | 2018-08-03 20:55

wo我还以为会自动生成一个string表,是因为string是系统自己的类所以不支持动态代理吗

支持(0) 反对(0) 猝不及防 | 园豆:2731 (老鸟四级) | 2018-08-06 09:12

@猝不及防: 数据库里有string类型的好不..

支持(0) 反对(0) 吴瑞祥 | 园豆:29449 (高人七级) | 2018-08-06 11:33
0

要把 string 改为一个实体类型

dudu | 园豆:31075 (高人七级) | 2018-08-03 21:03

wo我还以为会自动生成一个string表,是因为string是系统自己的类所以不支持动态代理吗

支持(0) 反对(0) 猝不及防 | 园豆:2731 (老鸟四级) | 2018-08-06 09:12

na我感觉这不太符合面向对象啊,有什么能统一思想的方法吗

支持(0) 反对(0) 猝不及防 | 园豆:2731 (老鸟四级) | 2018-08-06 09:13
0

把public List<string> List { get; set; }变为public List<类名称> List { get; set; }

逢玉FYL | 园豆:30 (初学一级) | 2018-08-06 08:59

r庵后这个类就一个string属性吗

支持(0) 反对(0) 猝不及防 | 园豆:2731 (老鸟四级) | 2018-08-06 09:12

na我感觉这不太符合面向对象吗,有什么能统一思想的方法吗

支持(0) 反对(0) 猝不及防 | 园豆:2731 (老鸟四级) | 2018-08-06 09:13
0

你这个是string集合,不是string。数据库没有string集合的类型。

chengeng | 园豆:294 (菜鸟二级) | 2018-08-07 09:21
0

1,数据库没有List<string> 这个对应的类型

2,你想生成两个表,看看官方文档吧。https://docs.microsoft.com/zh-cn/ef/core/modeling/?view=aspnetcore-2.1

public class Book
{
    public int Id{get;set;}
    public string Name{get;set;}
    public virtual ICollection<BookPath> BookPaths{get;set}
}

public class BookPath
{
    public int Id{get;set;}
    public string Path{get;set;}
    public int BookId{ get; set; }
    [ForeignKey("BookId")]
    public virtual Book Book { get; set; }
}
找不到一个满意的昵称 | 园豆:243 (菜鸟二级) | 2018-08-08 15:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册