У меня есть приложение ASP.net MVC 4 (Razor). Мы используем Dojo 1.9 Gridx для отображения данных.asp.net MVC - @ HTML.Raw выписывает модель на страницу
Мой контроллер возвращает мою модель на вид. Для работы с моделью на стороне клиента, я обычно присваиваю его переменный яваскрипт, как так:
var _model = @Html.Raw(Json.Encode(Model));
можно затем передать _model контроля Gridx додзё. Мне не нравится, если вы просматриваете источник в браузере, данные в _model видны на странице. Видит ли данные _model в браузере по дизайну? или есть лучший способ сделать это?
Правильно, я не хочу, чтобы данные модели были видны в источнике страницы. Я все еще могу просматривать данные модели даже при назначении скрытого поля, и удаление его не работает. – alpha
@alpha Что значит, именно, удалив его, не работает? Если вы вызываете '$ (element) .remove()', то, согласно [jQuery docs] (http://api.jquery.com/remove/), этот элемент и все его дочерние элементы будут удалены. С помощью приведенного выше кода вы останетесь со своей моделью просмотра (в JSON) в переменной '_model', и вы не сможете увидеть какие-либо данные в режиме просмотра в источнике страницы. – rwisch45
@alpha Если все, что вы хотите сделать, это получить данные viewmodel в Javascript-переменную, чтобы вы могли использовать ее с некоторыми фреймворками Javascript, считали ли вы выборку viewmodel через WebAPI? Или просто вернуть его как JSON с MVC JSONResult? Обе эти опции полностью обойдут любые данные непосредственно в DOM – rwisch45