У меня есть следующие два объекта, которые я пытаюсь связать (один к одному )с помощью ассоциаций внешнего ключа.
public class StandardRack {
public int Id {get;set}
public StandardRelay StandardRelay {get;set}
}
public class StandardRelay {
public int Id {get;set}
public int StandardRack_Id {get;set;}
[Required][ForeignKey("StandardRack_Id")]
public StandardRack StandardRack { get; set; }
}
Это вызывает исключение ModelValidationException. Любые идеи, почему такая, казалось бы, простая двунаправленная связь-к-одному не может быть настроена.
Изменить:
Вот исключение:
System.Data.Entity.ModelConfiguration.ModelValidationException было поймано Сообщение = Во время создания модели обнаружена одна или несколько ошибок проверки:
System.Data.Edm.EdmAssociationEnd::Множественность недействительна в роли «StandardRelay_StandardRack_Source» в отношении «StandardRelay_StandardRack». '. Поскольку свойства зависимой роли не являются ключевыми свойствами, верхняя граница кратности зависимой роли должна быть «*».
Источник=EntityFramework Трассировка стека:в System.Data.Entity.ModelConfiguration.Edm.EdmModelExtensions.ValidateAndSerializeCsdl(Модель EdmModel, средство записи XmlWriter)в System.Data.Entity.ModelConfiguration.Edm.EdmModelExtensions.ValidateCsdl(Модель EdmModel)в System.Data.Entity.DbModelBuilder.Build(DbProviderManifest providerManifest,DbProviderInfo providerInfo)в System.Data.Entity.DbModelBuilder.Build(DbConnection providerConnection)в System.Data.Entity.Internal.LazyInternalContext.CreateModel(LazyInternalContext internalContext)в System.Data.Entity.Internal.RetryLazy
2.GetValue(TInput input) at System.Data.Entity.Internal.LazyInternalContext.InitializeContext() at System.Data.Entity.Internal.InternalContext.Initialize() at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) at System.Data.Entity.Internal.Linq.InternalSet
1.Инициализировать()в System.Data.Entity.Internal.Linq.InternalSet1.GetEnumerator() at System.Data.Entity.Infrastructure.DbQuery
1.System.Collections.Generic.IEnumerable.GetEnumerator()в System.Collections.Generic.List1..ctor(IEnumerable
1 коллекция)в System.Linq.Enumerable.ToList[TSource](IEnumerable`1 источник)в TestApplication.MainWindow.Window_Loaded(Отправитель объекта, RoutedEventArgs e)в D:\RailwayProjects\RelayAnalysis\TestApplication\MainWindow.xaml.cs:строка 33 InnerException: