【发布时间】:2022-01-28 04:31:40
【问题描述】:
在我的项目中,我有一个 Client 实体。该实体使用 Address 类,而该类又不是实体。
public class Client{
public int Id { get; set;}
public string Name { get; set;}
public Address Address { get; set;}
}
public class Address {
public string City { get; set;}
public string Country { get; set;}
}
在 Address 类中输入的数据将被持久化在 Client 实体中。地址类仅用于代码组织和复用。
上传实体框架核心上下文时出现以下错误:
实体类型“地址”需要定义主键。如果 您打算使用无密钥实体类型,请在 'OnModelCreating'。有关无密钥实体类型的更多信息,请参阅 https://go.microsoft.com/fwlink/?linkid=2141943.
地址未在上下文中作为 DbSet 映射,但实体尝试映射它。为什么?有没有人经历过这种情况?
我如何让实体明白 Address 类只是 Customer 类的补充,而不是实体本身。
【问题讨论】:
-
你要使用数据库吗?你要如何保存地址?
-
地址类的字段保存在客户端实体中。地址类仅用于代码组织。
标签: sql-server entity-framework-core