Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当未使用order by时,是否指定Linq到对象联接的默认顺序?_C#_.net_Linq_Linq To Objects - Fatal编程技术网

C# 当未使用order by时,是否指定Linq到对象联接的默认顺序?

C# 当未使用order by时,是否指定Linq到对象联接的默认顺序?,c#,.net,linq,linq-to-objects,C#,.net,Linq,Linq To Objects,我有以下疑问 IEnumerable<string> values = from first in goodOrdered join second in badOrdered on first.ToLower() equals second.ToLower() select second; IEnumerable values=从顺序中的第一个开始 在第一个上加入第二个。ToLower()等于 第二,托洛尔() 选择第二个; 目前,我的测试显示最终结果实际上是有序的,就像我想要的

我有以下疑问

IEnumerable<string> values = from first in goodOrdered
join second in badOrdered on first.ToLower() equals
second.ToLower()
select second;
IEnumerable values=从顺序中的第一个开始
在第一个上加入第二个。ToLower()等于
第二,托洛尔()
选择第二个;

目前,我的测试显示最终结果实际上是有序的,就像我想要的那样。我可以期望它总是正确的吗?或者我应该提供一个ORDERBY语句,强制保持GoodOrder(这将使查询更加复杂,因为goodOrdered可能看起来像1、9、2、7、6)?

是的,确实如此。根据报告:

Join保留outer元素的顺序,并为每个 这些元素,内部匹配元素的顺序

当然,如果文件中没有具体说明,这将是一个完全不同的问题。你可能想考虑的另一个问题是负责维护代码的开发人员,以及你是否希望他们知道/记住加入的合同包括保护外部序列的顺序……/P>