LINQ 客户端新增自增列如何做?
网上得方法 两种都试过:
var query=list.Select((x,i)=>new {序号=i++,x.产品号 ,x.零件号}); 本身就报错,改成:
var query=list.Select((x,i)=>new {序号=i+1,x.产品号 ,x.零件号}); 运行时报错不能不支持用于查询运算符“Select”的重载。
var newList = list.AsEnumerable().Select((x, i) => new { x.dTaskEndTime, orderNo = i + 1 });无法将XX类型 转换为 SQL 并且无法将它视为局部表达式。
list 代码:
var list = (from a in LinqDBContext.UerCheckList
select new
{
a.dTaskStartTime,
a.dTaskEndTime,
a.orgid,
OrgManagerId=string.IsNullOrEmpty(a.OrgManagerId)?"":a.OrgManagerId,
OrgUserId = string.IsNullOrEmpty(a.OrgUserId) ? "" : a.OrgUserId,
Remarks = string.IsNullOrEmpty(a.Remarks) ? "" : a.Remarks,
a.SubmitStatet,
a.SubmitTime,
a.UserCheckId,
a.UserCheckTime,
State = a.dTaskEndTime < DateTime.Now ? "逾期" : (from c in LinqDBContext.UserCheckContent where c.orgid == a.orgid select c.ProjectId).ToList().Count == (from d in LinqDBContext.UserCheckInfo where d.UserCheckId == a.UserCheckId select d).ToList().Count ? "已完成" : ((from e in LinqDBContext.UserCheckInfo where e.UserCheckId == a.UserCheckId select e).ToList().Count == 0 ? "未完成" : "完成中"),
SiteInfo = LinqDBContext.site.Where(x => x.orgid == a.orgid).Select(x => new { x.siteid, x.sitename })
});