【发布时间】:2020-05-24 14:08:57
【问题描述】:
我有两个实体
public class Student {
public int Id { get; set; }
public string Name { get; set; }
public StudentAddress Address { get; set; }
}
和
public class StudentAddress {
public int StudentAddressId { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Country { get; set; }
public int StudentId { get; set; }
public Student Student { get; set; }
}
基本上是一对一的关系
我有这样的代码
var students = await context.Students.Include(s => s.Address).ToListAsync();
var student1 = students[0];
var student2 = students[1];
var st1Addr = student1.Address;
var st2Addr = student2.Address;
student1.Address = st2Addr;
student2.Address = st1Addr;
await context.SaveChangesAsync();
当 EF 保存更改时,其中一条学生地址记录会从 DB 中删除。
我需要更改对学生地址的引用。如何使用 EF 核心实现这一目标?
【问题讨论】:
-
能否分享两条记录的底层数据?
标签: c# .net entity-framework orm one-to-one