Я использую ASP .NET MVC 3, и у меня есть интересная проблема, для решения которой я надеюсь дать несколько советов.
У меня есть страница с несколькими элементами div.Содержимое каждого div изменяется со временем, и поэтому в настоящее время у меня есть таймер для каждого запуска div, который отправляет серверу запрос $ .ajax, который возвращает PartialViewResult с обновленным содержимым div.Частичное представление является довольно сложным и ссылается на другие представления.
Проблема этого подхода заключается в том, что он не очень хорошо масштабируется.Может случиться так, что у каждого пользователя работает много таких таймеров, и при большом количестве пользователей сервер постоянно поражается.Поэтому я бы предпочел сделать один запрос к серверу, который, возможно, возвращает несколько Div-содержимого, так что это будет:
div1 { some html }
div2 { some html }
...
Тогда на клиенте я смогупоместите каждый бит HTML в правильную позицию на странице.
Я думал, что я мог бы вернуть JSON с сервера, но моя проблема - как мне получить HTML?В данный момент компилятор бритвы запустится и превратит мои cshtml файлы частичного просмотра в HTML, но если я возвращаю JSON, возможно ли программно вызвать компилятор бритвы?
Я нашел Razor Engine здесь: http://razorengine.codeplex.com/ это, кажется, делает то, что я хочу, но возможно ли это сделать только с помощью ванильного ASP NET MVC?
Или, учитывая проблему, есть ли лучший способ, которым я мог бы достичь своей цели?
Спасибо за любую помощь!