Сначала я использую базу данных EF5 с частичными классами. В моем частичном классе есть свойство, которое содержит n объект, который хранится как столбец в моей базе данных, содержащий данные XML. Я хочу обработать сериализацию/десериализацию этого объекта, когда EF пытается прочитать/записать его с помощью пользовательского getter/setter.Предотвратите создание EF 5 от создания объекта
Возможно ли выставить столбец в моем частичном классе и отобразить его с помощью EF без автоматического создания для него свойства?
т.е.
public SomeObject BigComplexObject { get; set; } // forms etc in my app use this
public string BigComplexObjectString // when the EF tries to read/write the column, my custom getter/setter kicks in
{
get { return this.BigComplexObject.ToXmlString(); }
set { this.BigComplexObject = new BigComplexObject(value); }
}
В настоящее время EF является автоматической генерации элемента для столбца, так что я оставил с ними.
BigComplexObjectString будет в автогенерированном частичном классе. Вы можете поместить свойство BigComplexObject в свой собственный частичный класс (с тем же именем). Я изменил логику в ваших getters/seters, чтобы EF мог отображать данные напрямую, и ваше настраиваемое свойство не должно мешать ему. –