草庐IT

LINQ_ENABLED

全部标签

c# - AutoMapper继承和Linq

我一直在研究如何在AutoMapper中使用继承,但我正在努力让它与Linq完全兼容。这是我的代码:我在这里定义了我的映射:CreateMap().Include();ArticleDetailsViewModel是ArticleNewsItemDetailsViewModel的基类。现在问题就出在这里,如果我有:CreateMap();View模型中的所有属性都会自动映射,因为它们与对应的Linq对象同名。但是,因为我使用的是Article=>ArticleNewsItemDetailsViewModel映射,所以这是不可能的,相反我必须将每个定义为:.ForMember(x=>x.

c# - LINQ 中的多个 .Where() 语句是性能问题吗?

我想知道多个.Where()语句是否对性能有影响。例如我可以写:varcontracts=Context.Contract.Where(c1=>c1.EmployeeId==employeeId).Where(c1=>!Context.Contract.Any(c2=>c2.EmployeeId==employeeId&&c1.StoreId==c2.StoreId&&SqlFunctions.DateDiff("day",c2.TerminationDate.Value,c1.DateOfHire.Value)==1)).Where(c1=>!Context.EmployeeTask

c# - LINQ 中的多个 .Where() 语句是性能问题吗?

我想知道多个.Where()语句是否对性能有影响。例如我可以写:varcontracts=Context.Contract.Where(c1=>c1.EmployeeId==employeeId).Where(c1=>!Context.Contract.Any(c2=>c2.EmployeeId==employeeId&&c1.StoreId==c2.StoreId&&SqlFunctions.DateDiff("day",c2.TerminationDate.Value,c1.DateOfHire.Value)==1)).Where(c1=>!Context.EmployeeTask

c# - LINQ 根据子顺序对平面列表进行排序

我目前正在尝试找出一种使用LINQ和C#对元素进行排序的好方法,但我有点失败了。对于这个问题,假设您有下表---TempTableID(int)ParentID(int)Name(varchar)SortOrder(int)ID和ParentID相互关联,给了我一个self分层的数据结构。根元素在ID字段中为空。SortOrder只是整个表的一部分,并且基于ParentID,因此共享相同ParentID的元素确实有1、2、3。让我们进一步假设以下数据:ID=1ParentID=nullName=Test1SortOrder=1ID=2ParentID=1Name=Test2SortOr

c# - LINQ 根据子顺序对平面列表进行排序

我目前正在尝试找出一种使用LINQ和C#对元素进行排序的好方法,但我有点失败了。对于这个问题,假设您有下表---TempTableID(int)ParentID(int)Name(varchar)SortOrder(int)ID和ParentID相互关联,给了我一个self分层的数据结构。根元素在ID字段中为空。SortOrder只是整个表的一部分,并且基于ParentID,因此共享相同ParentID的元素确实有1、2、3。让我们进一步假设以下数据:ID=1ParentID=nullName=Test1SortOrder=1ID=2ParentID=1Name=Test2SortOr

c# - LINQ to Entities 无法识别方法 'System.Linq.IQueryable`

我想运行这个LINQ简单代码以在LINQ中获得记录号,但结果低于错误varmodel=_db2.Persons.Select((x,index)=>new{rn=index+1,col1=x.Id}).ToList();错误:LINQtoEntitiesdoesnotrecognizethemethod'System.Linq.IQueryable1[f__AnonymousType22[System.Int32,System.Int32]]Select[Person,f__AnonymousType22](System.Linq.IQueryable1[MvcApplication2

c# - LINQ to Entities 无法识别方法 'System.Linq.IQueryable`

我想运行这个LINQ简单代码以在LINQ中获得记录号,但结果低于错误varmodel=_db2.Persons.Select((x,index)=>new{rn=index+1,col1=x.Id}).ToList();错误:LINQtoEntitiesdoesnotrecognizethemethod'System.Linq.IQueryable1[f__AnonymousType22[System.Int32,System.Int32]]Select[Person,f__AnonymousType22](System.Linq.IQueryable1[MvcApplication2

c# - 使用 linq 查询简化流程

这是我的table:瞳孔营养IdPupilIdNutritionId110100210101我的另一张table营养:IdNutritioncategoryBatchIdNutritionRateNutritionIdOperation1A1900010012B1500010003C1500010014D2600010125E2700010126F280001010这是一个存储最终Rate的字段:decimalRate=0;案例1:值为0且BatchId为1的操作字段Rate=Rate+NutritionRate(i.e5000becauseforbatchid1withconditi

c# - 使用 linq 查询简化流程

这是我的table:瞳孔营养IdPupilIdNutritionId110100210101我的另一张table营养:IdNutritioncategoryBatchIdNutritionRateNutritionIdOperation1A1900010012B1500010003C1500010014D2600010125E2700010126F280001010这是一个存储最终Rate的字段:decimalRate=0;案例1:值为0且BatchId为1的操作字段Rate=Rate+NutritionRate(i.e5000becauseforbatchid1withconditi

c# - 如何在 LINQ 语句中重用表达式?

出于DRY的原因,我喜欢重用表达式,但如何在LINQ语句中重用表达式?例如我有publicstaticclassMyExpressions{publicstaticExpression>IsAGoodProduct(){return(p)=>p.Quality>3;}}并且想在LINQ语句中使用它,所以vargoodProds=frompindataContext.Productswhere?????//howdoIuseIsAGoodProducthere?selectp;当然,我可以使用IQueryableExtension.Where函数,但是对于更复杂的查询,这会使连接和其他函