2013-05-04 96 views
-1

我真的很困惑。 我跟着這tutorial如何處理來自數據庫中2個表的數據?

我知道如何添加,但現在我不知道如何添加方法,它從2表中獲取數據不是從表中。 因爲我想要的結果有2個表的屬性。例如 答:

客戶:的customerID,客戶名稱

訂單:訂單ID,客戶ID,訂購日期

我想結果是:

客戶ID,客戶名稱,訂購日期。

但我很困惑,因爲客戶和訂單的類是不同的。 我不知道我應該返回哪種類型的結果,以便我可以綁定到我的gridview。 如果是客戶類型,OrderDate不具有。訂單也一樣。 有人請給我小費。 提前致謝。

+0

我認爲你需要加入這個兩代表客戶ID來標識 – 2013-05-04 12:19:25

+0

使用您的qeuery加入並使用SqlDataAdapter的填補數據集 – 2013-05-04 12:21:28

+0

您可以使用連接,然後獲取客戶的整套訂單。然後,您可以將該數據綁定到「IEnumerable 」,其中'CustomerData'將是一個具有'IEnumerable '對於客戶,您可以在網格或任何用戶界面中使用它們。 Jure張貼作爲回答,當我作爲評論鍵入,你可以upvote和標記他的回答 – Saravanan 2013-05-04 12:25:38

回答

0

您可以創建一個代表服務方法所需結果的新類。 比方說:

public class MyCustomerResult 
{ 
    public int  CustomerID{get;set;} 
    public string CustomerName{get;set;} 
    public DateTime? OrderDate{get;set;} 
} 

,然後創建一個返回新類的方法

public IQueryable<MyCustomerResult> GetMyCustomerByLastName(string startingLastNameLetter) 
{ 
    //you should modify query to return data that you need, this is only example 
    var q = from customer in this.ObjectContext.Customers 
      from order in this.ObjectContext.Orders 
      where c.CustomerID = o.CustomerID 
      select new MyCustomerResult 
      { 
       CustomerID=c.CustomerID, 
       CustomerName=c.CustomerName, 
       OrderDate=o.OrderDate 
      } 

    return q; 
} 
+0

不好意思!我想獲得所有的數據,然後如何寫基地的ID?對不起,我是新手。 – TM500 2013-05-05 03:09:38

+0

從客戶c選擇c.customerID,c.CustomerName,o.orderdate,order o其中c。 customerID = o.oderID可以請你幫我翻譯成LINQ? – TM500 2013-05-05 03:18:05

+0

@ TM500我更新了答案,我認爲你正在尋找的是LINQ查詢 – jure 2013-05-05 12:43:09

相關問題