【发布时间】:2015-11-26 12:25:23
【问题描述】:
我的 LINQ to SQL 有点弱,所以会尝试解释我的问题。
我有一个方法如下(简化为更好解释):
public static List<ic_ProductData> GetCompleteSimilarProductsWithApplyButton(InfoChoiceAdminDataContext db)
{
var products = (from
p in db.ic_ProductDatas
join proddef in db.ic_ProductDefs on p.ProductDefId equals proddef.ProductDefId
select p
).ToList();
return products;
}
ic_ProductData 和 ic_ProductDefs 是我数据库中的表
ic_ProductData 类包含手动创建的属性:
public ic_ProductDef RelatedProductDef { get; set; }
我想修改上面的 LINQ to SQL 查询,以便我可以填充这个属性。
请注意,我不想再次调用数据库。
ic_ProductData 中还有很多属性,所以我想避免映射每个属性
大意如下(显然下面是错误的):
public static List<ic_ProductData> GetCompleteSimilarProductsWithApplyButton(InfoChoiceAdminDataContext db)
{
var products = (from
p in db.ic_ProductDatas
join proddef in db.ic_ProductDefs on p.ProductDefId equals proddef.ProductDefId
//trying to change here
select new ic_ProductData
{
//do something with p here so that all the properties of new object gets filled
// avoid mapping of properties here
RelatedProductDef = proddef
}
).ToList();
return products;
}
由于我的知识有限,我被困在这里。
请帮忙!
提前致谢!
【问题讨论】:
标签: c# linq linq-to-sql linq-to-objects