我的问题是与ToLinq()方法:为什么第一个query.ToList()工作,但第二个不工作?
我不understind为什么没有问题的第一个请求的工作,但第二个给我像一个例外:
(LINQ的表达式的节点类型arrayIndex n为不支持LINQ到实体)
var q = from a in ctx.ImmImmobilisations select a;
q = q.Where(x => x.CodeEntite == "EDEF");
q = q.Where(x => x.CodeAffectation == "000001");
q = q.Where(x => x.Unite == "ITS");
q = q.OrderBy(x => x.CodeImmobilisation);
List<ImmImmobilisation> res = q.ToList();
var query = from e in ctx.ImmImmobilisations select e;
if (!string.IsNullOrEmpty(args[0])) query = query.Where(x => x.CodeEntite == args[0]);
if (!string.IsNullOrEmpty(args[1])) query = query.Where(x => x.CodeAffectation == args[1]);
if (!string.IsNullOrEmpty(args[2])) query = query.Where(x => x.CodeFamille == args[2]);
if (!string.IsNullOrEmpty(args[3])) query = query.Where(x => x.CodeCCout == args[3]);
if (!string.IsNullOrEmpty(unite)) query = query.Where(x => x.Unite == unite);
query = query.OrderBy(x => x.CodeImmobilisation);
var ress = query.ToList();