簡體   English   中英

現在可以使用BreezeJS而無需使用EF嗎?

[英]Can now use BreezeJS without having to use EF?

以前您必須使用Entity Framework作為Breeze直接連接到DbContext,並且該對象在其他地方不存在。 有手工創建元數據的概念(即通過T4)我可以訪問SQL服務器,其中每個Table都有自己的crud usp(SSMS工具包),ashx將所有RMI都放入DB,生成json架構等DTO服務模式。 我查看了WCF服務層( http://davybrion.github.io/Agatha/ ),但monolith EF似乎無處不在。 我試過Angular我很高興使用ADO或Dapper.NET BreezeJS的連接是高性能后端(Micro-ORM)還是應該使用Kendo DataSource( http://docs.telerik.com/ kendo-ui / framework / datasource / overview )。 這適用於需要無摩擦數據的混合移動應用程序。 其他人發現了一個不那么臃腫的簡單ClientSide / Server Side JSON數據集成系統? 提前致謝

是的,您可以在沒有EF的情況下使用Breeze。 這需要更好地提升。

Breeze.ContextProvider包不依賴於EF。 它有一個ContextProvider類,用於處理將JSON從客戶端轉換為服務器端.NET實體。 您將ContextProvider子類ContextProvider實現實際保存到數據庫的部分。

breeze.server.net提供了兩個實現:Breeze.ContextProvider.EF用於Entity Framework,Breeze.ContextProvider.NH用於NHibernate。 您可以查看這些以獲取有關如何構建Dapper實現的靈感。

其中一個棘手的問題是以正確的順序執行添加和刪除操作。 例如,如果我要添加客戶和一些相關訂單,則需要在訂單之前將客戶添加到數據庫中。 EF會自動對添加進行排序,但NH不會,因此我們在NHRelationshipFixer中有一個SortDependencies()方法。 如果您的micro-ORM沒有為您執行此操作,您可能需要執行類似的操作。

如果您想出一個微型ORM的實現,請考慮將其貢獻給社區。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM