[英]Linq Query for getting details from 2 table and putting into ObservableCollection C#
目前,我正在使用以下代码创建用户集合并将其绑定到数据网格。 工作正常。
private ObservableCollection<User> users;
using (CarStudioDBEntities dt = new CarStudioDBEntities())
{
var catList = (from user in dt.Users
select user).ToList();
users = new ObservableCollection<User>(catList);
this.Dispatcher.Invoke(() =>
{
lstUsers.ItemsSource = users;
});
}
a
<DataGrid x:Name="lstUsers" Background="White" Margin="0" AutoGenerateColumns="False" IsReadOnly="True">
<DataGrid.Columns>
<DataGridTemplateColumn Width="80">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Name="viewUserDetailsBtn" Content="View" Click="viewUserDetailsBtn_Click" Background="#FF3F5164" BorderBrush="Black" FontSize="10" Height="24" Padding="0" Margin="0" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Username" Width="*" Binding="{Binding Username}"/>
<DataGridTextColumn Header="Name" Width="*" Binding="{Binding Name}"/>
<DataGridTextColumn Header="Role" Width="*" Binding="{Binding Role}"/>
<DataGridTextColumn Header="Contact Number" Width="*" Binding="{Binding ContactNo}" />
<DataGridTextColumn Header="Status" Width="*" Binding="{Binding Status}" />
</DataGrid.Columns>
</DataGrid>
问题是我需要创建另一个ObservableCollection部分; 其中包含对类别表的外键引用。 现在,我需要通过零件中存在的categoryId获取类别表中的类别名称,最后将具有类别名称的零件详细信息绑定到数据网格。 我不能为此编写适当的linq查询。 简而言之,我需要带有零件和类别详细信息的ObservableCollection。
如果要使用LINQ在DataTables上查找内部联接。
var result = from dataRows1 in table1.AsEnumerable()
join dataRows2 in table2.AsEnumerable()
on dataRows1.Field<string>("ID") equals dataRows2.Field<string>("ID")
select dtResult.LoadDataRow(new object[]
{
dataRows1.Field<string>("ID"),
dataRows1.Field<string>("name"),
dataRows2.Field<int>("<other fields you want>"),
}, false);
result.CopyToDataTable();
之后,您可以使用新的DataTable进行绑定
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.