Привязка модели MVC 2.0 работает с запросами Ajax?

я просто отправляю нормальный запрос POST с помощью Ajax. BeginForm..., я произвел элементы формы с помощью.TextBoxFor и.HiddenFor и т.д.... все, как я должен... и когда он отправляется через ajax на мой метод действия, объект в методе действия (названный "Комментарием") не заполняется со значениями!

Я пропускаю что-то? вот соответствующая часть моего кода тем, кто хочет видеть его...

<%  Using Ajax.BeginForm("UpdateComment", "Home",
    New AjaxOptions With {.UpdateTargetId = Model.CommentDivId,
    .HttpMethod = FormMethod.Post})%>

и....

    <%= Html.HiddenFor(Function(x) x.Comment.CommentID)%>

 <%= Html.TextAreaFor(Function(x) x.Comment.Comment, 8, 40,
                   New With {.style = "overflow: hidden;"})%>

    <%= Html.ValidationMessageFor(Function(x) x.Comment.Comment) %>

вот Метод действия, который повышает ошибку... ошибка является исключением нулевой ссылки, когда я пытаюсь использовать объект:

 Function UpdateComment(ByVal UpCom As Comment) As ActionResult

Тусклый дб = Новый FPicDataContext, Тусклый Обновляемый = (От c В дб. Комментарии, Где c. CommentID = UpCom. CommentID).FirstOrDefault Обновляемый. Комментарий = UpCom. Комментарий 'ЭТО - ТО, ГДЕ ОБЪЕКТ ЯВЛЯЕТСЯ ПУСТОЙ ОШИБКОЙ, ПОВЫШЕН! В ОСНОВНОМ ВСЕ ЗНАЧЕНИЯ В UPCOM (КОММЕНТАРИЙ AS) 0 ИЛИ НИЧТО. дб. SubmitChanges ()

Тусклый cm = Новый CommentModel С {.Comment = UpCom.CommentDivId = "CommentDiv" и UpCom. CommentID.ToString}

Возвратите PartialView ("Комментарий", cm)

Конечная функция

5
задан Erx_VB.NExT.Coder 24 February 2010 в 17:05
поделиться

2 ответа

Эта проблема, которую я, в конце концов, решил, оказалось, что имя объекта, к которому привязана модель в аргументе действия, должно быть таким же, как имя объекта, которое вы использовали при выполнении TextBoxFor BeginForm и т.д.

другими словами, UpCom вместо этого нужно было назвать Комментарий :).

однако, предостережение, я нигде не слышал об этом требовании, ни в какой документации или в чем-то еще !! у кого-нибудь есть мысли по этому поводу?

2
ответ дан 15 December 2019 в 00:59
поделиться

Вот подход, который я использовал для обнаружения сбоев построения из MSDeploy при выполнении скрипта Nant для удаленного развертывания. Это не идентичный scenerio, но должен дать вам концепцию, чтобы идти с. В основном вы можете запустить это из оболочки, вам нужен язык сценариев, как powershell, чтобы захватить вывод и чем пост обрабатывает обычный текст, возвращающийся из msdeploy. Я разобрал эту проблему с командой MSDeploy и дал им знать, что с этим трудно справиться.

http://www.lostechies.com/blogs/hex/archive/2009/12/29/update-on-using-msdeploy-for-remote-deployments.aspx

-121--3311357-

Подождите, я думаю, что вижу, что вы пытаетесь сделать сейчас, и ответ - да абсолютный.

Есть несколько плагинов jQuery, которые вы можете захватить, что позволит размещать формы с помощью Ajax.

Я использовал этот, и он работает нормально. Подключаемый модуль формы jQuery Этот тоже может работать на тебя. . подчиниться

1
ответ дан 15 December 2019 в 00:59
поделиться