【发布时间】:2018-12-21 10:33:24
【问题描述】:
我不知道 LINQ 会产生什么变量。 我想为结果 LINQ 创建空变量。让我们看一下详细的例子
int Id = 1;
IEnumerable<object> permission = null;
if(Id != 0) {
permission = from x in db.foo
join y in db.bar
on x.Id equal y.fkBar
select new {
Id = x.Id,
Name = y.Name }
permission = permission.where(a => a.Name = "xxxx")
} else {
permission = from x in db.foo
select new {
Id = x.Id,
Name = "" }
permission = permission.where(a => a.Name = "yyyyy")
}
return permission;
where clause“对象”中的错误不包含“名称”的定义,并且找不到接受“对象”类型的第一个参数的可访问扩展方法“名称”
【问题讨论】:
-
创建一个类,除非你不会使用
object。 -
也许你可以使用dynamic type,不过我不知道使用它是否是个好主意。
-
你遇到过匿名类型。尽管它们很有用,但有时却没有。在您的用例中,您需要创建一个类并避免使用匿名类型。
标签: c# entity-framework linq