0
我在MSDNs walkthrough.的幫助下創建了RIA服務解決方案我有兩個顯示兩個表中數據的數據網格。一個數據網格顯示材料,另一個數據網格顯示組成部分(瑞典語Sortiment)。但是我想合併這兩個表格,因爲零部件表中的零部件ID也在材料表中表示。我如何將兩個表中的列合併到一個數據網格中並在Silverlight中使用連接?
我該如何將兩個表中的列合併到一個數據網格中並在Silverlight中使用連接?
public partial class MainPage : UserControl
{
private DomainService1 _materialContext = new DomainService1();
private DomainService1 _sortimentContext = new DomainService1();
public MainPage()
{
InitializeComponent();
#region Material
EntityQuery<Material> query =
from c in _materialContext.GetMaterialQuery()
where c.tillverkningsorderID.Equals(1)
orderby c.materialID
select c;
//LoadOperation<Material> loadOp = this._materialContext.Load(this._materialContext.GetMaterialQuery());
LoadOperation<Material> loadOp = this._materialContext.Load(query);
myMaterialGrid.ItemsSource = loadOp.Entities;
#endregion
#region Sortiment
LoadOperation<Sortiment> loadOp_S = this._sortimentContext.Load(this._sortimentContext.GetSortimentQuery());
sortiment.ItemsSource = loadOp_S.Entities;
#endregion
}
編輯:這是一個一對多的關係
是的,這是一對一的關係。能夠編輯和保存數據庫中的更改很容易嗎?我也可以在數據網格中使用下拉列表。 – DeveloperDahak
如果您使用EF進行編輯/保存,那麼是的...它就像以前一樣簡單。如果你將這些函數映射到存儲過程,那麼顯然你需要手動對其進行排序。它的要點是,不是有兩種類型的實體('Material'和'Sortiment'),你的模型將有一種類型的實體('MaterialWithSortiment'),所以你的所有數據操作都在這種新類型上。這是*跨多個表分割*實體*。只要您在模型中獲得了映射權,EF就會照顧通常的污染物。 – Mashton
沒有抱歉。這是一對多的關係! – DeveloperDahak