2010-05-26 121 views
0

我忙於創建業務邏輯層。現在我有一個問題,因爲我想使用C#編程,並且我必須爲vb.net創建一個模塊。我已經在解決方案中使用新項目解決了這個問題。該項目將維護數據類和業務邏輯。現在我遇到了一個問題,至少我不知道該怎麼做。 這是我到目前爲止已經完成:使用DBML設置業務邏輯層

  • 我已經建在溶液中的新項目中,我不能使用C#,因爲它是所有vb.net
  • 我做的dbml的對於我希望在未來的應用程序中使用的每種類型的實體。

現在我正在研究業務邏輯層。我有我的應用程序中使用的每種類型的dbml。例如,我有一個名爲「關係」的dbml。現在我想設置BLL功能來根據搜索字符串輸入返回關係列表。 現在我應該實現一個名爲Relations.cs的類並添加構造函數邏輯等,並創建一個這種類型的列表並返回這個列表,或者我應該只使用關係dbml中的Datacontext並使用linq返回qry列表輸入類似下一行的代碼?

List<QRY_HOSTING_Relaty> relatieLijst = (
    from QRY_HOSTING_Relaty res 
    in dcRelaties.QRY_HOSTING_Relaties 
    select res).ToList<QRY_HOSTING_Relaty>(); 

這是我不知道如果我要做出我自己的類型,而我已經有我的DBML的,我大概只是​​可以使用自定義類型。 所以,我應該實現我自己的關係類,並利用DBML的?

回答

1

對於每個數據庫/域,您通常應該有一個DBML文件。您不應該爲每個表/類/實體創建一個DBML,因爲這將爲每個類創建一個DataContext。這樣做會使您失去LINQ to SQL的大部分有用功能,如內存事務(工作單元)以及在多個實體上執行LINQ查詢。

通常不需要創建自己的類型來包裝由LINQ to SQL生成的類。典型的使用方法是:在數據庫中創建表(具有適當的關係);創建一個DBML並將所有需要的表拖放到DBML上;更改表格和列名稱是合適的。

+0

非常感謝;)! – Younes 2010-05-26 08:11:44