В моей модели я имею отношение 2 ко многим к одной и той же таблице.Вот так:
public class BpsModel {
[Key]
public int Id { get; set; }
public string Name { get; set; }
public List<Person> Reviewers { get; set; }
public List<Person> Modelers { get; set; }
}
public class Person
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
}
Когда я запускаю миграции, это структура базы данных Person:
migrationBuilder.CreateTable(
name: "Persons",
columns: table => new
{
Id = table.Column<int>(nullable: false)
.Annotation("Sqlite:Autoincrement", true),
BpsModelId = table.Column<int>(nullable: true),
BpsModelId1 = table.Column<int>(nullable: true),
Email = table.Column<string>(nullable: true),
Name = table.Column<string>(nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Persons", x => x.Id);
table.ForeignKey(
name: "FK_Persons_BpsRecords_BpsModelId",
column: x => x.BpsModelId,
principalTable: "BpsRecords",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_Persons_BpsRecords_BpsModelId1",
column: x => x.BpsModelId1,
principalTable: "BpsRecords",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
});
Как видите, таблица Person имеет два столбца с очень похожимиимена: BpsModelId
и BpsModelId1
.Это бесполезно, так как теперь мне нужно копать, кто из них является Modeler, а кто рецензентом.Есть ли способ изменить имя столбца на что-то вроде ReviewerBpsModelId
и ModelerBpsModelId
?
Спасибо