我是新來的Silverlight,但被傾倒權加入戰局 - 學習我想好辦法:O)Silverlight LINQtoSQL:一個大的數據類,還是幾個小的數據類?
無論如何,我工作的web應用程序具有代表不同對象相對複雜的數據庫結構鏈接到對方,我想知道兩兩件事:
1 - 什麼是推薦的方法,當涉及到數據類?只有一個大的數據類,或者試着將它分成幾個較小的數據類,記住它們需要相互引用?如果推薦的方法是有幾個數據類,那麼如何定義數據類間的引用?
我這麼問是因爲我做了一個小測試。在我的數據庫(在這裏簡化,實際模型更復雜,但並不重要),我有一個表「訂單」和一個表「參數」。 「訂單」在「參數」上有一個外鍵。我所做的是創建2個數據類。 第一個,ParamClass,是我只有放棄了「參數」表,這樣我就可以有一個很好的「參數」類。然後我創建了一個簡單的服務來添加基本的SELECT和INSERT功能。
第二個,OrdersClass,其中,I下降兩個表,使得表之間的關係將自動創建「命令」類中的「的EntityRef <參數>」變量。然後我刪除了在OrdersClass數據類中自動創建的「parameters」類,因爲該類已經在ParamClass數據類中聲明瞭。我再次創建了一個小服務來測試它。
到目前爲止好,它高興地建立。問題是,當我嘗試處理應用程序代碼的東西,我添加服務引用了兩個數據類,但它是不開心做這樣的事情:
OrdersServiceReference.order myOrder = new OrdersServiceReference.order();
myOrder.parameter = new ParamServiceReference.parameter(); //<-PROBLEM IS HERE
它comlpains它不能隱式地從類型轉換「MytestDC .ParamServiceReference.parameter'到'MytestDC.OrdersServiceReference.parameter'
難道我不知何故需要聲明來自OrdersClass的ParamClass的某種引用,或者如何「轉換」到另一個? 這是甚至建議和有效的方式嗎? 由於這是一個團隊項目,我最初想分離數據類,以便他們(和他們的服務)可以很容易地由一個成員簽出而不需要檢查整個整個數據類。
任何幫助表示讚賞!
PS:使用Silverlight 4,如果基於廣泛接受的單責任原則(SRP)這是很重要
這絕對是我的首選,在我所做的所有項目中,我一直都遵循這種方法。你能指出我在哪裏可以找到有關如何鏈接數據類的詳細信息? – Bourgui 2011-02-12 14:40:45