MVC3 UpdateModel - установка свойства Id поддерживается только в .NET 3.5 - PullRequest
0 голосов
/ 27 октября 2011

Получение ошибки, пойманной в UpdateModel

"Установка свойства Id поддерживается только в .NET 3.5+ во время десериализации объекта" System.Exception {System.NotSupportedException}

public ActionResult Edit1(Guid id, ActivityResponseConsumerMobile arcm) {
        if (!ModelState.IsValid) {
            SetupDropDowns();
            return View(arcm);
        }

        ActivityResponseConsumerMobile arcmDb = uow.ActivityResponseConsumerMobiles.Single(a => a.Id == id);
        try {
            UpdateModel(arcmDb);
        }
        catch {
            var x = ModelState;
            return View(arcm);
        }

Feelsкак SO Вопрос: MVC2 генерирует InvalidOperationException в UpdateModel (), пытаясь обновить поле идентификатора

, но я использую объект вместо FormCollection.ORM я использую LightSpeed.

1 Ответ

0 голосов
/ 27 октября 2011

Выглядит пока хорошо с добавлением исключения ..

UpdateModel(arcmDb, null, null, new[] {"Id"});

Оказывается, это не проблема MVC, поскольку у меня была та же проблема с использованием AutoMapper в другом месте приложения, и мне пришлось исключитьИдентификатор там тоже.

   Mapper.CreateMap<ActivityPushConsumerMobile, ActivityPushConsumerMobile>()
                              .ForMember(dest => dest.EntityState, opt => opt.Ignore())
                              .ForMember(x => x.Id, y => y.Ignore())

Не уверен относительно того, что изменилось с тех пор, как оно заработало.Возможно обновление с LightSpeed3 до 4. И я использую .NET4 framework.

...