草庐IT

dynamic-linq

全部标签

c# - 类型为 ‘dynamic’ 的表达式在运行时的行为方式是否应与相同运行类型时间的非动态表达式相同?

考虑以下示例程序:usingSystem;publicdelegatestringMyDelegateType(intinteger);partialclassProgram{staticstringMyMethod(intinteger){returninteger.ToString();}staticvoidMain(){Funcfunc=MyMethod;//Scenario1:worksvarnewDelegate1=newMyDelegateType(func);newDelegate1(47);//Scenario2:doesn’tworkdynamicdyn=func;v

c# - 如何在 xml 数据的 linq 查询中使用 TryParse?

我在内存中处理每日股票市场数据的xml,我得到其中一个日期的值“8/221/19055”。我看到TryParse可能是我检查有效日期的最佳选择,但MSDN文档似乎对第二个参数“outDateTimeresult”的解释很清楚。如何在下面的linq查询中使用它?varmakeInfo=fromsindoc.Descendants("quote")wheres.Element("LastTradeDate")!=null&&s.Attribute("symbol")!=nullletdateStr=s.Element("LastTradeDate").Valuewhere!string.I

c# - Linq Contains() 是否检查 HashSet?

有时HashSet通过属性作为IEnumerable公开。众所周知,对于enumerable.Count(),代码会检查它是否是一个集合,因此它不会枚举整个列表,而是走捷径。对于使用enumerable.Contains(x)和HashSets的Linq版本是否有任何类似的检查? 最佳答案 来自referencesource,是的,虽然不是直接的:publicstaticboolContains(thisIEnumerablesource,TSourcevalue){ICollectioncollection=sourceasICo

c# - LINQ - 将属性添加到结果

除以下方法外,还有其他方法可以将属性添加到Linq查询结果的对象吗?varquery=fromxindb.Coursesselectnew{x.OldProperty1,x.OldProperty2,x.OldProperty3,NewProperty=true};我想在不列出对象的所有当前属性的情况下执行此操作。有很多属性,我不希望每次更改类时都必须更新此代码。我仍在学习LINQ,非常感谢您的建议。 最佳答案 用部分类添加它:publicpartialclassCourses{publicStringNewProperty{get

c# - LINQ 与 OR 连接

我想使用OR语句与LINQ进行JOIN。这是我开始的SQL查询:SELECTt.idFROMTeamstINNERJOINGamesgON(g.homeTeamId=t.idORg.awayTeamId=t.id)ANDg.winningTeamId!=0ANDg.year=@yearGROUPBYt.id我在将该ON子句转换为LINQ时遇到问题。这就是我所在的位置:vary=fromtindb.Teamsjoingindb.Gamesont.IDequalsg.AwayTeamID//missingHomeTeamIDjoinwhereg.WinningTeamID!=0&&g.Ye

c# - 如何确定 Linq-To-Sql 对象中更改了哪些字段

我有一个linq-to-sql数据库,我想在其中记录对实体所做的一些更改。现在,我正在通过读取DataContext.GetChangeSet().Updates属性获取更新的实体,但这并没有为我提供来自已更改实体的字段。有没有办法知道更新的实体中哪些字段被修改了??谢谢 最佳答案 DataTable有一个方法GetModifiedMembers,它将返回一个成员列表,这些成员已针对指定的实体实例进行了更改。DataClasses1DataContextcontext;Class1instance=context.GetChange

c# - 如何使用 LINQ 合并两个列表?

如何使用LINQ合并两个列表,如下所示:classPerson{publicintID{get;set;}publicstringName{get;set;}publicPersonMerge(Personp){returnnewPerson{ID=this.ID,Name=this.Name+""+p.Name};}}我有两个人名单:list1:1,A2,Blist2:2,C3,D我想要如下结果result:1,A2,BC3,D任何帮助! 最佳答案 我强烈建议不要使用字符串连接来表示此信息;如果您想稍后从合并列表中取回原始数据,则

c# - System.Linq.Dynamic - 我可以在 WHERE 语句中使用 IN 子句吗

我有动态linqWHERE语句:dataContext.Table.Where("id=0Orid=1Orid=2Or...");我想更改为:dataContext.Table.Where("idIN(0,1,2,...)");但它不起作用。我怎样才能做到这一点以获得更好的性能? 最佳答案 来自Howtouse“contains”or“like”inadynamiclinqquery?//edit:thisisprobablybroken,seebelowids=newint[]{1,2,3,4};dataContext.Table

c# - Linq 查询以在列表 c# 的列表中过滤 id

我有一个结果列表列表,其中包含列表。我有另一个列表,其中仅包含列表。我想使用linq查询从数据中进行过滤,它应该返回包含技能ID的所有数据来自第二个列表。varlist=this._viewModel.Data.Select(T=>T.SkillsList);varfiltered=item.Skills.Contains(list.Where(t=>t.ToString()).ToList();从第一个列表开始,它包含技能列表中的小数列表;item.Skills包含字段为skillid和代码的列表。item是另一个包含技能列表的对象。 最佳答案

c# - 如何在 C# 中使用 LINQ 对通用 IEnumerable (IEnumerable<T>) 进行 OrderBy?

在我的通用存储库中,我有以下方法:publicvirtualIEnumerableGetAll()whereT:class{using(varctx=newDataContext()){vartable=ctx.GetTable().ToList();returntable;}}T是一个LinqtoSql类,我希望能够对特定属性(即intSortOrder)进行OrderBy。假设T具有属性名称“SortOrder”,然后对该属性执行OrderBy。但我不确定如何实现这一目标。所以我需要一些帮助。谢谢!我觉得动态语言在做这种工作时真的很出色!QuotefromScottGu:While