ASP.Net MVC 3 WebFormsViewEngine HTML Helpers и данные JSON - PullRequest
0 голосов
/ 19 августа 2011

Я хотел бы знать, возможно ли это в ASP.Net MVC 3, используя механизм просмотра веб-форм и помощники HTML, и на стороне клиента мы используем Ext.Js для создания сеток.

Проблема в том, что я возвращаю JSON (данные) для сетки Ext.JS и помощника HTML. Помощник HTML не может отобразить элемент JSON. Появляется окно с вопросом «Что Firefox должен делать с этим файлом?» .

Я пытался использовать:

return this.Json(new { objectJson = object}, "text/html", JsonRequestBehavior.AllowGet);

И он вернул новую страницу с кодом HMTML, не привязанную к помощникам HTML. Я также пытался без JsonRequestBehavior.AllowGet , и результат был:

Этот запрос был заблокирован, поскольку конфиденциальная информация может быть раскрыта сторонним веб-сайтам, когда она используется в запросе GET. Чтобы разрешить запросы GET, установите для JsonRequestBehavior значение AllowGet.

И даже если я изменю MIME-тип заголовка на application / json и получу метод, возвращаемый как JSONResult вместо ActionResult , он все равно не будет ' распознать файл.

return this.Json(new { IssueInventoryPartModel = issueInventoryPartmodel, success = true }, "application/json", JsonRequestBehavior.AllowGet);

Вкратце вопрос: Помощник HTML для механизма просмотра веб-форм связывается с JSON?

С уважением,

Tito

Ответы [ 3 ]

1 голос
/ 20 августа 2011

У меня была эта проблема при отправке html-данных через json, и я решил ее, добавив contenttype к jsonresult, в методе действия на стороне сервера (вызываемом через js на стороне клиента) должно быть что-то вроде:

return Json(dataToReturn, "text/html")
0 голосов
/ 20 августа 2011

как насчет включения JsonRequestBehavior.AllowGet в return JSON, как в:

return Json(new
            {
                data = components,
                success = true
            }, JsonRequestBehavior.AllowGet);
0 голосов
/ 19 августа 2011

похоже, что тип содержимого для результата действия установлен неправильно

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