2011-10-15 90 views
0

我的數據庫結構如何將數據綁定到來自多個對象的組合數據?

汽車

-carid 
-carname 
-carmodle 
-cartypeid 
-carmakeid 

CarType

-cartypeid 
-cartypename 

CarMake

-carmakeid 
-carmakename 

該數據庫將包含相同的類 樣車基本型號,品牌,類型與相同的屬性數據庫表的每一列;

我該怎麼做,如果我想所有的數據綁定在DataGrid ... CarName,CarTypeName,CarMakeName ....

我該怎麼辦?寫一個新的類與它的所有屬性沒有任何意義..你只能繼承類,以便不是...我是否必須改變datalogic層呢?

+0

您正在使用什麼版本的Visual Studio的東西嗎? –

回答

1

有幾種方法:

  1. 暴露你的嵌套屬性爲第一級屬性和綁定第一級性能到DataGridView。

    public class Car 
    { 
        public int CarID { get; set; } 
        public string CarName { get; set; } 
        public CarType CarType { get; set; } 
        public Make CarMake { get; set; } 
        // Expose CarTypeName as first-level property 
        public string CarTypeName { get {return CarType.CarTypeName; }} 
    } 
    
    public class CarType 
    { 
        public int CarTypeID { get; set; } 
        public string CarTypeName { get; set; } 
    } 
    
  2. 實現類似的東西to this.

  3. 實現類似to this.
+0

謝謝我使用這種技術,但問題是...當我爲數據庫獲取數據時,有很多往返行程,像她的每一行汽車我必須檢查一下製造和cartype表...我使用哪一層綁定這些數據業務邏輯層? – thewayman

+0

您不需要進行多次往返讀取一排汽車。您可以閱讀整個汽車對象,包括類型,並讓您的選擇語句對這些表進行聯接,並且您的類結構與我給出的示例類似。一次獲取並製作一個是非常低效的。取決於你如何實現這一點,你可以讓DAL返回一個包含所有屬性的汽車列表。 – Icarus

相關問題