Цель состоит в том, чтобы иметь API со всеми полями GravityZone с названием зоны, исходящей из таблицы Zone. Я пробовал несколько перестановок следующего кода без успеха. В настоящее время он появляется с нулевым значением для зоны, в которой я надеюсь получить либо имя, либо строку или часть объекта. Я работаю с существующими таблицами, которые я не могу изменить.Entity Framework 6.1.3 Сопоставление внешнего ключа с непервичным ключом
Модели:
public partial class Zone
{
[Key]
[Column("ZONE_ID")]
public decimal ZoneId { get; set; }
[Column("ZONE_CODE")]
public decimal ZoneCode { get; set; }
[Column("ZONE_NAME")]
public string ZoneName { get; set; }
public virtual ICollection<GravityZone> GravityZones { get; set; }
}
public partial class GravityZone
{
[Key]
[Column("GRAVITY_ID")]
public decimal GravityZoneId { get; set; }
[Column("ZONE_CODE")]
public decimal ZoneCode { get; set; }
[Column("ELEVATION")]
public decimal Elevation { get; set; }
[Column("REMARK")]
[StringLength(2000)]
public string Remark { get; set; }
public virtual Zone Zone { get; set; }
}
Контекст (только реляционная часть)
modelBuilder.Entity<Zone>()
.HasKey(e => e.ZoneCode);
modelBuilder.Entity<GravityZone>()
.HasRequired(e => e.Zones);
Все остальное приходит назад отлично подходит для этой части, за исключением:
"Zones":null,
Это очень плохо. Еще больше ворчит, прежде чем я выберу этот проект. Спасибо за ответ! – stb