1

我首先使用 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 是 a Server class, c 是 a CEServer class

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

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

2 回答 2

1

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

foreach (var row in query) {
    Server s = row.s;
    // Check the server...
    CEServer c = row.c;
    // Use CEServer...
}
于 2013-03-07T11:34:08.473 回答
1

如果你确定你只会得到一对,你可以使用这个:

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

如果没有,你会得到异常

于 2013-03-07T11:36:15.737 回答