У меня есть большой объект JSON, который мне нужно передать в представление, отображаемое в веб-браузере. Поскольку у меня не может быть Controller с Action для возврата этого объекта JSON, я думал добавить объект JSON в представление Razor.MVC Razor view 'System.OutOfMemoryException' с большой строкой значений
@Html.Hidden("fileContent", fileContent);
<textarea style="display:none"> @fileContent </textarea>
Ни один из указанных выше работ, как пути я ожидал, и дает мне,
Исключение типа 'System.OutOfMemoryException' был выброшены.
Описание: Необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в коде.
Сведения об исключении: System.OutOfMemoryException: Исправлено исключение типа 'System.OutOfMemoryException'.
Да, я решил, что лучше перестроить поток по-другому (may be as Mediator suggest или есть действие, чтобы вернуть объект JSON.)
- Это ограничение MVC, максимальный размер мы можем для просмотра MVC?
- Это из-за конфигурации IIS Express?
- Любой другой способ преодолеть эту проблему? Или лучший способ передать большой объект в клиентский браузер.
Благодарим вас за внимание. Любая помощь будет высоко оценен.
EDIT
Контроллер
var file = System.IO.File.ReadAllText(HttpContext.Server.MapPath("~/content/data.csv"));
ViewData.Add("file", file);
return View();
Стек след
[OutOfMemoryException:. Исключение типа 'System.OutOfMemoryException' был брошен] System.Text .StringBuilder.ExpandByABlock (В t32 minBlockCharCount) +163 System.Text.StringBuilder.Append (Char * значение, Int32 valueCount) +82
System.Text.StringBuilder.AppendHelper (строковое значение) +31
System.Text.StringBuilder.Append (String значение) +186
System.IO.StringWriter.Write (Строковое значение) +30
System.Web.WebPages.WebPageBase.Write (значение объекта) +87
Что такое 'fileContent'? И в чем смысл отправить его на представление, а затем отправить его обратно без изменений? –
Существует много факторов, вызывающих «OutOfMemoryException», например. 'StringBuilder' или отсутствие выделения памяти для определенного потока. Проверьте код контроллера, чтобы обеспечить правильное обращение ресурсов. –
@StephenMuecke fileContent - строка JSON. Я конвертирую эту строку в объект JSON в скрипте java на стороне клиента. Этот объект JSON будет использоваться для отображения страницы. – Geeganage