草庐IT

Comparison

全部标签

c# - 比较 XML 文件是否相等的最佳方法是什么?

我使用的是.NET2.0,最近的代码更改使我之前的Assert.AreEqual调用(比较两个XML字符串)无效。XML中只有一个元素在新代码库中实际上不同,所以我希望所有其他元素的比较会给我想要的结果。比较需要以编程方式完成,因为它是单元测试的一部分。起初,我考虑使用几个XmlDocument实例。但后来我发现了这个:http://drowningintechnicaldebt.com/blogs/scottroycraft/archive/2007/05/06/comparing-xml-files.aspx看起来它可能有效,但我对StackOverflow反馈很感兴趣,以防有更好

c# - .NET 和 T-SQL 之间的字符串比较差异?

在我编写的测试用例中,字符串比较在SQLserver/.NETCLR之间的工作方式似乎不同。此C#代码:stringlesser="SR2-A1-10-90";stringgreater="SR2-A1-100-10";Debug.WriteLine(string.Compare("A","B"));Debug.WriteLine(string.Compare(lesser,greater));将输出:-11此SQLServer代码:declare@lesservarchar(20);declare@greatervarchar(20);set@lesser='SR2-A1-10-90

c# - linq表达式可以不区分大小写吗

我正在利用thisprojecttousejqgridtofilterandsortcollections.一个缺少的功能是此示例没有进行我需要的不区分大小写的搜索。因此,如果用户输入“Test”,我希望它与“TEST”、“TeST”等匹配。.我有这样的代码:caseWhereOperation.Equal:condition=Expression.Equal(memberAccessToString,filter);lambda=Expression.Lambda(condition,parameter);break;caseWhereOperation.NotEqual:condi

c# - 哪个是快速比较 : Convert. ToInt32(stringValue)==intValue 或 stringValue==intValue.ToString()

在开发我的应用程序时,我遇到了一些比较的东西:stringstr="12345";intj=12345;if(str==j.ToString()){//domylogic}我在想上面的东西也可以用:stringstr="12345";intj=12345;if(Convert.ToInt32(str)==j){//domylogic}所以我开发了一个示例代码来测试哪个性能更好variterationCount=1000000;varwatch=newStopwatch();watch.Start();stringstr="12345";intj=12345;for(vari=0;i第二

c# - 比较 XML 节点的高效算法

我想确定XML文档中两个不同的子节点是否相等。如果两个节点具有相同的属性集和子注释并且所有子注释也相等(即整个子树应该相等),则它们应被视为相等。输入文档可能非常大(高达60MB,要比较的节点超过100000个)并且性能是个问题。检查两个节点是否相等的有效方法是什么?示例:HelloWorld此XML片段描述了OpenXML文档中的段落。该算法将用于确定文档是否包含与文档前面的另一个段落具有相同属性(w:pPr节点)的段落(w:p节点)。我的一个想法是将节点的外部XML存储在哈希集中(通常我必须首先获得规范的字符串表示,其中属性和子注释总是以相同的方式排序,但我可以期待我的节点已经是这

c# - 使用 InvariantCultureIgnoreCase 而不是 ToUpper 进行不区分大小写的字符串比较

在thispage,一位评论者写道:永远不要使用.ToUpper来确保比较字符串时不区分大小写。取而代之的是:type.Name.ToUpper()==(controllerName.ToUpper()+"Controller".ToUpper()))这样做:type.Name.Equals(controllerName+"Controller",StringComparison.InvariantCultureIgnoreCase)为什么首选这种方式? 最佳答案 这里是详细的答案..TheTurkeyTest(阅读第3部分)Asd

c# - 使用 List.Sort(Comparison<T> comparison) 在 C# 中对列表进行排序

我创建了一个类如下:publicclassStringMatch{publicintline_num;publicintnum_of_words;}我已经创建了一个列表Listsm;里面的元素很少。如何使用Comparison对列表进行排序比较过载?必须根据num_of_words进行排序字段。 最佳答案 您可以编写lambda表达式来比较两个对象,如下所示:sm.Sort((x,y)=>x.num_of_words.CompareTo(y.num_of_words));你可以通过添加-进行逆序排序sm.Sort((x,y)=>-x

c# - 比较两个列表以搜索常见项目

Listone//1,3,4,6,7Listsecond//1,2,4,5如何从一个列表中获取第二个列表中也存在的所有元素?在这种情况下应该是:1,4我当然会谈论没有foreach的方法。而是linq查询 最佳答案 您可以使用Intersect方法。varresult=one.Intersect(second);示例:voidMain(){Listone=newList(){1,3,4,6,7};Listsecond=newList(){1,2,4,5};foreach(intrinone.Intersect(second))Con

c# - 比较在字典中用作键的对象

我的类(class):publicclassmyClass{publicintA{get;set;}publicintB{get;set;}publicintC{get;set;}publicintD{get;set;}}和主要示例:Dictionary>dict=newDictionary>();myClassfirst=newmyClass();first.A=2;first.B=3;myClasssecond=newmyClass();second.A=2;second.B=3;second.C=5;second.D=6;dict.Add(first,newList());if(

c# - 如何检查两个 Xml 树的相似性(C# 中的树编辑距离)

在C#应用程序中,我需要检查我的算法的输出,这是一个XML树与另一个XML树的对比,以查看它们有何相似之处。(节点顺序很重要,但结构(嵌套节点)、节点名称更重要)。也许在某些“TreeEditdistance”算法中出现的adds、removes和moves的数量是一个很好的指标。但答案是更多的Java或Python包。所以,我尝试使用XMLDiffPatch,当算法类型设置为Precise时效果很好。然而它的缺点是它只是生成一个DiffGram文件,需要对其进行分析以找出操作数。此外,它有很多问题,并且会为某些XML树生成OutOfRangeException。对于.Net,我也找不