Получение этой ошибки: другой объект с тем же значением идентификатора уже был связан с сеансом: 27, объекта: xxx.Core.Event
По сути, у меня есть модели представления, которые отображаются из моегопоко и наоборот.Оскорбительный код здесь:
Mapper.CreateMap<EventsAddEditViewModel, Event>();
Event thisEvent = _eventRepository.GetById(viewModel.Id);
thisEvent = Mapper.Map<EventsAddEditViewModel, Event>(viewModel);
thisEvent.EventType = new EventType { Id = viewModel.EventTypeId };
ValidationResult result = _eventService.Save(thisEvent);
В основном я загружаю событие из базы данных, а затем сопоставляю модель представления этому событию и сохраняю.В противном случае есть поля, которые не отображаются в представлении (например, dateCreated), которые не будут сохранены должным образом.
Есть ли способ, которым NHibernate и AutoMapper могут хорошо играть в этом отношении?
Я использую OnePerRequestBehavior для своего поставщика сеансов.