Как я могу сгенерировать клиентские модели для нокаута в проекте ASP.NET MVC?
В настоящее время я работаю над решением ASP.NET MVC и недавно представил как Knockout (библиотека MVVM JS), так и Wijmo (набор виджетов jQuery UI).
С введением Knockout мне также нужно иметь модели на стороне клиента, поэтому для этой цели я сериализую C # ViewModel и присоединяю его к представлению с помощьюdata-model="@Model.ToJson()"
. Это позволяет мне извлечь модель из JS и применить какую-либо любовь на стороне клиента ко всему.
Однако, нокауту нужно все, чтобы его можно было наблюдать, поэтому мне нужно объявить отдельную ViewModel на стороне клиента и отобразить все из объекта модели данных. Это похоже на дублирующее усилие, и я хотел бы как-то избежать этого.
Я надеюсь, что у кого-нибудь есть инструмент или методика, которые позволят мне визуализировать нокаутированную ViewModel прямо с сервера. Возможное решение может включать в себя:
Настроить сериализацию JSON, чтобы визуализировать наблюдаемую модель представления непосредственно в выходные данные в атрибуте модели данных. Автоматическое преобразование на стороне клиента (я слышал о ko-autobind, но не уверен, будет ли это рекомендуемый путь или насколько он стабилен / завершен) То, о чем я не подумалаМне бы хотелось, чтобы решение было универсальным и автоматическим, поскольку мой нынешний подход к вводу наблюдаемых моделей представлений на стороне клиента вручную слишком непродуктивен, чтобы быть жизнеспособным.
Как ты решаешь эту проблему?