c# - 作为 EntityFramework Core 中的字段的接口
问题描述
有没有办法将接口用作 EF Core 中的类的字段(CodeFirst,最后一个版本到第 5.0 天)?
说
public class Order
{
public int Id { get; set;}
public IUser CreatedBy { get; set; }
}
解决方案
您可以使用 db 中不存在的导航属性接口。但是对于 Db 列,您需要具体的类。
在您的情况下,您有两种方法:
public class Order
{
[Key]
public int Id { get; set;}
[ForeignKey]
public int UserId CreatedBy { get; set; }
}
这样您就可以将 UserId 保存到 Db 并重用它。这种方式是首选。
另一种方式 :
public class Order
{
[Key]
public int Id { get; set;}
[NotMapped]
public IUser CreatedBy { get; set; }
}
但是只要内存中存在 Order 实例,就可以使用这种方式 IUser。
推荐阅读
- algorithm - 改装0-1背包
- html - 如何将登录和注册按钮并排放置?....我想注册按钮指出 register.php HTML/CSS
- spss-modeler - 卡在 SPSS Modeler 中用零替换负值
- svelte - 如何在 Svelte 中将 {#each } 与数字一起使用
- ios - 子视图中的 @State 和 @Published 属性,SwiftUI
- xslt - 如何基于根元素中的网格元素创建 spanspec 元素?-XSLT
- javascript - 我如何选择经度和纬度以返回特定位置javascript
- r - 按行号和行名匹配 2 个数据帧,并在发生匹配时从第一个 df 中提取值
- c - 在 C 中添加两个大的双精度数会产生不正确的结果
- blockchain - 气体估计错误并显示以下消息(见下文)。事务执行可能会失败。内部 JSON-RPC 错误