недавно была обновлена база данных ГИС сервера sql, которая изменила несколько типов данных.
Теперь у меня есть таблица с именем Trail и столбцом с именем Status типа Numeri c (40,0), это быть внешним ключом для таблицы с именем Trail_Status со столбцом с именем Status_Key (int)
здесь была моя попытка.
public class TrailConfiguration : EntityTypeConfiguration<TrailModel>
{
public TrailConfiguration()
{
this.ToTable("PA_TRAILS", "dbo");
this.Property(p => p.StatusKey)
.HasColumnName("STATUS")
.HasColumnType("numeric")
.IsRequired();
this.HasRequired(p => p.Status)
.WithMany()
.HasForeignKey(k => k.StatusKey);
}
}
public class TrailModel
{
[Column(TypeName = "numeric")]
public int StatusKey { get; set; }
public virtual TrailStatusModel Status { get; set; }
}
public TrailStatusConfiguration()
{
this.ToTable("trail_status", "dbo");
this.HasKey(k => k.StatusKey);
this.Property(p => p.StatusKey)
.HasColumnName("status_key")
.HasColumnType("int")
.IsRequired();
this.Property(p => p.Name)
.HasColumnName("name")
.HasColumnType("nvarchar")
.IsRequired();
}
public class TrailStatusModel
{
public int StatusKey { get; set; }
public string Name { get; set; }
}
Я получаю следующую ошибку.
TrailStatusModel_TrailModel :: Типы всех свойств в зависимой роли ссылочного ограничения должны совпадать с типами соответствующих свойств в главной роли. Тип свойства 'STATUS' для объекта 'TrailModel' не соответствует типу свойства 'status_key' для объекта 'TrailStatusModel' в ссылочном ограничении 'TrailModel_Status'.