我正在對單頁應用程序使用ASP WebAPI和knockoutJS。最佳實踐:將模型轉換爲json viewmodel
現在,我有webfrontend和knockoutJS viewmodel。另外,我有一個SQL數據庫(模型)。
現在我想把模型數據放到前端。我不知道最好的辦法是什麼。 當然,我可以將模型序列化爲JSON。我知道ko.mapping-plugin和Razor序列化機制。
我的問題是:我的模型與viewmodel完全不同。我需要一個轉換機制或其他東西。
示例模型:
- 表:國家/列數:ID,名稱
- 表:CitiesInCountry /列數:ID,名稱,CountryID
示例視圖模型:
{名稱:'德國',城市:['柏林','紐倫堡','科隆']}
所以模式l保存所有可用的國家+城市,前端只顯示一個國家和城市。
我是不是尋找算法。我正在尋找「做到這一點的最佳方式」。控制器的轉換部分是什麼?我需要一個C#類的視圖模型(然後序列化)?
有人能指點我一個好的設計模式/教程/示例項目嗎?
thx!
混凝土,這意味着我需要我的JSON - 視圖模型的POCO的表示?所以我實現了一個c#-viewmodel - >用模型中的數據填充它(包括轉換) - >序列化它 - >將它發送到前端? – user3796786 2014-10-02 14:36:33
@ user3796786增加了一些例子 – aleha 2014-10-02 15:17:00
thx,兩個答案都是正確的。兩者都幫助了我很多!我個人更喜歡其他答案,所以我選擇這個作爲正確答案。 – user3796786 2014-10-07 10:12:59