在处理一对一关系时,需要注意以下几个要点:
以下是代码示例:
// 创建实体类 public class User { public int Id { get; set; } public string Name { get; set; } public Profile Profile { get; set; } }
public class Profile { public int Id { get; set; } public string Address { get; set; } public User User { get; set; } public int? UserId { get; set; } // 外键属性 }
// 在 DbContext 中定义关系
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity
// 添加数据 using (var context = new MyContext()) { var user = new User { Name = "Tom" }; context.Users.Add(user);
var profile = new Profile { Address = "Shanghai" };
user.Profile = profile; // 将从表关联到主表
context.Profiles.Add(profile);
context.SaveChanges();
}