Как клонировать объекты в NHibernate? - PullRequest
11 голосов
/ 11 марта 2010

Как реализовать клонирование объектов (сущностей) в NHibernate? Каждый класс сущности имеет такие свойства:

public virtual IList<Club> Clubs { get; set; }

Кроме того, класс сущности наследует BaseObject. Я попытался реализовать решение с использованием XML-сериализации, но невозможно сериализовать интерфейсы.

Спасибо за ваши ответы!

Ответы [ 3 ]

15 голосов
/ 12 апреля 2010

AutoMapper http://automapper.codeplex.com/ решает мою проблему. Например, можно клонировать бизнес-объект следующим образом:

Mapper.CreateMap<Transaction, Transaction>();
var newtransact = new Transaction();
Mapper.Map(transact, newtransact);
2 голосов
/ 11 марта 2010
0 голосов
/ 11 марта 2010

Я не знаю ни вашего домена, ни требований, ни того, неправильно ли я вас понимаю, но реализация ICloneable интерфейса и написание кода для клонирования вашего объекта должны работать.

Помните, что при клонировании вам нужно будет набрать cast.

ClonedObject clonedObjectinstance = (ClonedObject)initialEntityInstance.Clone();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...