繁体   English   中英

如何从IQueryable检索不同的对象类型

[英]How to retrieve different object types from IQueryable

我首先使用Entity Framework 5代码。 我有以下查询返回2个不同的对象:

var query = (from s in DatabaseContext.Servers
             join c in DatabaseContext.CommandExecutionServers on s.Domain equals c.Domain
             where s.Id == serverId && c.Active == active
             select new { s, c });

s是Server class而c是CEServer class

如何从查询中检索s和c对象,因为我需要使用它们。 我需要类似的东西:

Server server = s;  // first check for nulls and
server.CEServer = c;  // check for nulls as well

由于查询返回了一系列匿名类的对象,因此您可以枚举查询,并从返回的每一行访问sc ,如下所示:

foreach (var row in query) {
    Server s = row.s;
    // Check the server...
    CEServer c = row.c;
    // Use CEServer...
}

如果您确定只得到一对,那么可以使用以下方法:

Server server = query.Single().s;  // first check for nulls and
server.CEServer = query.Single().c;

如果没有,您将获得exception

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM