我有一个如下所示的DataSet。使用LINQ在两个表之间选择不同的值
我所试图做的是填充的对象与尽可能多的信息可用。
所以我想从顶级数据集中获取UnitNum 65002,其余的从单列表中获取。
我的代码:
foreach (DataRow row in dsUnits.Tables[0].Rows)
{
var unit = new Unit.Unit
{
UnitNum = row["UnitNumber"].NullSafeToString(),
CustCode = row["CustCode"].NullSafeToString(),
Year = row["Year"].NullSafeToString(),
Make = row["Make"].NullSafeToString(),
Model = row["Model"].NullSafeToString()
};
UnitsInvolvedInBreakdown.Add(unit);
}
foreach (DataRow row in dsUnits.Tables[1].Rows)
{
if (UnitsInvolvedInBreakdown.Where(x => x.UnitNum == row["UnitNumber"].ToString()).Count() == 0)
{
var unit = new Unit.Unit
{
UnitNum = row["UnitNumber"].ToString()
};
UnitsInvolvedInBreakdown.Add(unit);
}
}
这似乎真的效率低下给我,我想下面的代码去没有结果,
var q = dsUnits.Tables[0].AsEnumerable().Except(dsUnits.Tables[1].AsEnumerable());
我的问题基本上是没有使用LINQ的方式从表格0中选择UnitNumbers,仅当它们不存在于表格1中时
更好的解释。
的单元数将在表1中它可能是在表0.1
如果是在表0,我想要得到的信息,从there..i有更多的信息。
如果它不在表0中,我想从表1获取信息,因为我必须得到我所能得到的信息。但我不想重复。
这是与实体框架? – 2015-03-13 14:38:41
我想要... – DidIReallyWriteThat 2015-03-13 14:40:17