ASP.NET MVC значения HttpPost и JSON - PullRequest
0 голосов
/ 13 марта 2012

Когда HttpGet выполняется в ASP.NET MVC, я заполняю текстовое поле некоторыми JSON-значениями, которые jQuery Tokeninput может использовать.

[HttpGet]
 public ActionResult Edit(Guid id, bool? success)
 {
     Section section = _sectionRepository.LoadById(id);

     var viewModel = new EditViewModel()
                            {
                                // uses the JavaScriptSerializer
                                ParentString = GetParentString(section.Parent),
                                [...]
                            };


     return View("Edit", viewModel);
 }

Эта работа, как и ожидалось.Однако если я выполняю HttpPost и моя модель недопустима, тогда значение ParentString больше не является форматом JSON.

[HttpPost]
[ValidateInput(false)]
public ActionResult Edit(Guid id, EditViewModel model)
{
    if (!ModelState.IsValid)
    {
        model.Success = false;
        var parentString = model.ParentString; // no JSON anymore

        return View("Edit", model);
     }
}

Итак, {"id": "e2eee66e-b0b1-4f9f-ab77-a1432da40c7d "," name ":" MyValue "} становится e2eee66e-b0b1-4f9f-ab77-a1432da40c7d | MyValue,.

После HttpPost jQuery Tokeninput больше не работает, поскольку ожидалось значение JSON.,Что может вызвать эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...