WPF和ef使用include选择表的一部分
本文关键字:一部分 选择 include ef 使用 WPF | 更新日期: 2023-09-27 18:11:47
我有一个有许多字段的表,我想只得到几个单独的字段,我使用EF,我在查询中添加另一个表,如下所示
var Test= ve.Folders.Include("Hosting")
.Where(a => a.Collateral!= true)
.AsEnumerable()
.Select(p => new
{
id = p.Folder_Id,
name = p.Full_Name,
add = p.Address,
date1 = p.Collateral_Date,
sName = p.Hosting._Name
})
.ToArray();
但是与第二个表相关联的字段(sName= p. hosting . _name)没有任何值查询不起作用许多尝试已经尝试,但没有结果(有趣的是,当我问没有选择一切都很好)
提前感谢您的帮助
需要注意的一点是,在这种情况下,在调用AsEnumerable
之后,Select
几乎没有什么好处,因为表中的所有数据仍然是从数据库中查询的(而不仅仅是您指定的字段)。
如果您想避免这一点,并且只查询这五个字段,您可以删除AsEnumerable
调用。这意味着Select
将作为SQL查询的一部分执行。这也意味着Include
是不必要的,因为Select
将查询您想要的所有数据。
var Test= ve.Folders
.Where(a => a.Collateral!= true)
.Select(p => new
{
id = p.Folder_Id,
name = p.Full_Name,
add = p.Address,
date1 = p.Collateral_Date,
sName = p.Hosting._Name
})
.ToArray();