【发布时间】:2017-03-22 15:44:56
【问题描述】:
我确实有两个 sql server 数据库表,它们是 Machine 和 Fault。机器表在我的网站上有关于特定机器的所有信息。故障表存储与特定机器相关的所有机械故障,即一台机器可以有许多故障(一对多关系)。我确实有一个绑定到 Machine 对象的数据源。这意味着结果我在这个对象中有一个故障集合。我正在使用 Windows 窗体控件 BindingNavigator 导航到系统中的每台机器。我能够查看每台机器的信息。但是,我很难在 DataGridView 中查看与所选机器相关的所有故障。如何在 DataGridView 中获取与机器相关的所有故障。在我的 Machine 类上,我有一个 get 属性,它返回给定 MachineID 的所有故障。因此,在我的 Machine 对象中,Faults 属性返回了一组错误,如下面的代码所示。请帮忙?
public override ICollection<Fault> Faults
{
get
{
//returning all faults associated with a given machine
using (var context = new AllEntities())
{
var faultsList = (from f in context.Faults
where f.MachineID == MachineID
select f).ToList<Fault>();
return faultsList; //return the list of faults
}
}
【问题讨论】:
-
我认为您必须使用
DataRelations 在标准DataGridView 中查看分层数据。请参阅此codeproject.com/Articles/28276/…。另一种选择是使用两个主/详细格式的网格。
标签: c# winforms datagridview objectdatasource bindingsource