查看MVC 4中的單頁應用程序測試版我沒有看到如何將我的舊域對象用作模型。它似乎要求模型使用實體框架來使用DbDataController來獲取數據等。帶有舊域對象的ASP.NET SPA
我不明白實體框架,所以我可能會丟失一些東西。
如何在MVC 4的SPA中使用我的傳統域(使用它自己的DAL)?
查看MVC 4中的單頁應用程序測試版我沒有看到如何將我的舊域對象用作模型。它似乎要求模型使用實體框架來使用DbDataController來獲取數據等。帶有舊域對象的ASP.NET SPA
我不明白實體框架,所以我可能會丟失一些東西。
如何在MVC 4的SPA中使用我的傳統域(使用它自己的DAL)?
這是由ASP.NET論壇中的其他人回答的。
如果您想使用其中一些RAD工具,您將無法使用EF以外的其他任何東西。但是,SPA建立在MVC之上,因此您應該能夠輕鬆構建自己的版本。重要的組件是在ApiController之上構建一個DataController,爲DataController提供的服務構建一個js使用者。如果你想用EF輸出格式化你的模型(我認爲它只是OData),你也可以使用upshot.js,並且只需要實現一個DataController來格式化你的域模型。
使用它幾天,你可以,理論上,使用它,如果你及SPA的未來版本的處理/固定以下後,我會添加以下。
您可以創建一個繼承自System.Web.Http.Data.DataController(甚至可能是ApiController)的控制器。它返回的對象必須具有用System.ComponentModel.DataAnnotations.Key()屬性裝飾的屬性。我可以看到工作正常,但一些更高級的功能,如分組,我遇到了問題。
Readonly屬性將不會返回我猜是因爲使用當前JSON序列化程序的問題。應該修復。
當然,如果你的域對象與子對象複雜,整個對象將被序列化,這可能是非常有問題的。特別是如果其中一些對象有自己的序列化問題。
與複雜序列化相關的當前JSON序列化程序無法在引用的域對象中處理循環引用。
我也遇到了更新/刪除/插入時使用我自己的控制器,從System.Web.Http.Data.DataController(這些示例使用DBDataController)繼承的回發問題。
嗨,我也玩弄SPA。你能指定使用DataController發現什麼樣的問題嗎?目前我沒有遇到任何問題.. – Hero 2012-06-10 14:02:58