c# - .NET Core 2.1 带有外键的模型应该如何正确完成?
问题描述
我有两张桌子:
Table A
Id PK
Name
Table B
Id PK
TableARowId FK
这应该如何通过迁移来实现?
如果将来我需要从表 B返回自定义响应,代码库和上下文中的模型应该如何反映这种关系?
响应示例:
{
Id: 123,
NameOfTableARowById: Table A Row
}
解决方案
也许:
modelBuilder.Entity<A>(entity =>
{
entity.Property(e => e.Id).ValueGeneratedOnAdd()
entity.ToTable("A");
entity.Property(e => e.Name)
});
modelBuilder.Entity<B>(entity =>
{
entity.Property(e => e.Id).ValueGeneratedOnAdd()
entity.ToTable("B");
entity.HasOne(d => d.A)
.WithMany(p => p.B)
.HasForeignKey(d => d.TableARowId)
.OnDelete(DeleteBehavior.ClientSetNull)
.HasConstraintName("FK_B_ToA");
});
推荐阅读
- asp.net - 将值与会话进行比较,并根据会话值显示和隐藏菜单项
- python - 来自分组列表的 django 过滤器
- javascript - 如何在 React.js 中的 React-Redux-Tabs 中显示和操作多个 Ag-Grids 的数据
- javascript - 使用 Javascript 获取特定目录中的所有文件名
- javascript - handlebarjs 将地图打印为表格
- javascript - 当提示框将使用jquery时,当用户单击确定时如何从提示框真值显示警报
- php - 基于 Woocommerce 中的自定义单选按钮的动态运费
- wpf - WPF ItemsControl 中的对齐和居中问题
- android - 通过共享首选项保存“if 语句”和统计信息
- java - 如何在 Javafx 中创建具有特定行数和自动生成列的 TableView?