В моем проекте есть несколько классов (включая 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, перезаписав соглашение?
Спасибо заранее.
Андреас