2015-04-25 31 views
-1

Breeze JS只支持net 4或4.5? 我可以在客戶端使用微風,我的服務器是.net 3.5。 我使用ADO.net作爲數據層而不使用實體框架。 如果我使用.net 3.5,我會錯過Breeze JS的任何功能嗎? 我曾經見過很多Breeze JS和MVC的文章。 如何用.net 3.5完成這項工作? 任何建議將不勝感激。Breeze JS客戶端與.net 3.5可能嗎?

回答

0

爲了支持BreezeJS客戶端,服務器應該做3兩件事:

  1. 提供metadata到客戶端
  2. 從客戶解釋queries,並用數據
  3. Save changes從進來回應客戶端

所有這三個在.NET 4.5中由EFContextProvider提供(用於Entity Framewor k)和NHContext(用於NHibernate)。您將需要找到一種方法來實現這些解決方案。

元數據:可以是written by hand或在設計時(即使你不使用EF在運行時)甚至generated by EF。如果您只需要項目的元數據,則不需要通用元數據生成工具。

查詢:可根據您的應用程序的需要簡單或複雜。對單個字段進行過濾,排序和skiptake分頁,可能就足夠了。您可以將大部分內容都實現爲parameterized queries,因此您無需解析URL。這限制了您可以從客戶端執行的查詢類型,但它可能只是您所需要的。

保存:微風「保存捆綁」是實體的陣列,每個都有一個EntityAspect比告訴你它是什麼類型的變化(新增,修改,刪除)和哪些領域發生變化。 您將需要將這些操作應用於數據庫。請注意,它們的應用順序很重要 (必須在子記錄之前添加父記錄,必須在父記錄之前刪除子記錄)。

在EFContextProvider中,很多這項工作都是由EF自己完成的。在NHContext中,查詢大部分都是使用NH LINQ, ,但元數據生成和保存處理必須寫在Breeze.ContextProvider.NH中。你可以看看code on github的靈感。 也看看NoDB樣本,它不使用EF或NH。

請讓我們知道你想出什麼。沒有ORM的微風是一個有趣的話題。

相關問題