У меня есть несколько классов (включая TPT) в моем проекте. Каждый POCO имеет BaseClass
, который имеет GUID
(называемый GlobalKey
) в качестве первичного ключа.
Сначала я использовал DataAnnotations
для создания правильных внешних ключей. Но тогда у меня проблемы с синхронизацией соответствующего GUID с самим объектом.
Теперь я хочу иметь только одно свойство виртуальной навигации, чтобы поле GUID в базе данных создавалось NamingConvention
. Но к имени поля всегда добавляется символ подчеркивания, за которым следует слово GlobalKey
(что правильно). Когда я хочу удалить подчеркивание, я не хочу проходить через все свои POCO в свободном API, чтобы сделать это:
// Remove underscore from Navigation-Field
modelBuilder.Entity<Person>()
.HasOptional(x => x.Address)
.WithMany()
.Map(a => a.MapKey("AddressGlobalKey"));
Любые идеи сделать это для всех POCOS, перезаписав соглашение?
Заранее спасибо.
Андреас