Entity Framework with MySQL 学习笔记一(关系整理版)
2014-11-03 22:13
495 查看
1-1 设置
注 : ForeignKey("member") 的member 是取至于 virtual Member "member" , 这2个要一直
基本的 CRUD
View Code
更新 : 2015-10-08
有一种关系叫 双向 1对1
参考 :
http://stackoverflow.com/questions/6276299/creating-bidirectional-one-one-relationship-in-entity-framework-4-1-code-first http://weblogs.asp.net/manavi/associations-in-ef-4-1-code-first-part-5-one-to-one-foreign-key-associations
个人不推荐使用,最明显的缺点是如果要删除关系,必须同时修改2个表的外键.
可以考虑使用多对多来做替代,虽然这样也不是很理想啦 ( 有best way的话请告诉我哦! )
//DataAnnotation 1-1 | 1-0 table //SQLtable : member , columns : memberId, name //SQL basic logic : 1个table的PK, 是另一个table的PK and FK , 这就是1-1和1-0的关系 [Table("member")] public class Member { [Key] public Int32 memberId { get; set; } public string name { get; set; } [Required] /* 1-0,这里就不要Required 1-1关系最好是放Required啦,在insert的时候才不会出错,但是... 如果你写Required,那么你在做update的时候这个address不能是Null,也就是说一定要inner join出来先,不是很方便. */ public virtual Address address { get; set; } } //SQLtable : address , columns : memberId, postcode, country [Table("address")] public class Address { /* 关键就是这个关系连接, "member" 是 tableName */ [Key, ForeignKey("member")] //foreignKey 一定要写在这里,不可以写在 Member 哦 public Int32 addressId { get; set; } //这里取名addressId也行 public string postcode { get; set; } public string country { get; set; } public virtual Member member { get; set; } }
注 : ForeignKey("member") 的member 是取至于 virtual Member "member" , 这2个要一直
基本的 CRUD
db.categorys.Add(new Category { name = "Man", prods = new List<Prod> { new Prod { code = "MK100", }, new Prod { code = "MK200", } } }); db.SaveChanges();
View Code
更新 : 2015-10-08
有一种关系叫 双向 1对1
参考 :
http://stackoverflow.com/questions/6276299/creating-bidirectional-one-one-relationship-in-entity-framework-4-1-code-first http://weblogs.asp.net/manavi/associations-in-ef-4-1-code-first-part-5-one-to-one-foreign-key-associations
个人不推荐使用,最明显的缺点是如果要删除关系,必须同时修改2个表的外键.
可以考虑使用多对多来做替代,虽然这样也不是很理想啦 ( 有best way的话请告诉我哦! )
相关文章推荐
- Entity Framework with MySQL 学习笔记一(关系)
- Entity Framework with MySQL 学习笔记一(拦截)
- Entity Framework with MySQL 学习笔记一(乐观并发)
- Entity Framework with MySQL 学习笔记一(查看EF和SQL请求日志)
- Entity Framework with MySQL 学习笔记一(验证标签)
- Entity Framework with MySQL 学习笔记一(继承)
- Entity Framework with MySQL 学习笔记一(查询)
- Entity Framework with MySQL 学习笔记一(安装)
- Entity Framework with MySQL 学习笔记一(insert,update,delete)
- Entity Framework with MySQL 学习笔记一(复杂类型 Complex Types)
- Professional Java Development with the Spring Framework学习笔记(1) - JdbcTemplate 中Query的几种用法
- MySQL语法大全_自己整理的学习笔记
- Using MySQL Connector .NET 6.6.4 with Entity Framework 5
- MySQL语法大全_自己整理的学习笔记
- Entity Framework Code First 学习日记(9)-映射继承关系
- mysql高性能学习笔记整理
- Entity Framwork CodeFirst 学习笔记四:关系的默认规则与配置
- MySQL语法大全_自己整理的学习笔记
- 【转载】Entity Framwork CodeFirst 学习笔记四:关系的默认规则与配置
- WMI005-WMI学习笔记(五)——Using WMI with the .NET Framework(.NET框架使用WMI)