Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.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# 如何将foreach嵌套循环转换为linq格式?_C#_Performance_Linq - Fatal编程技术网

C# 如何将foreach嵌套循环转换为linq格式?

C# 如何将foreach嵌套循环转换为linq格式?,c#,performance,linq,C#,Performance,Linq,代码: 如何将上述foreach嵌套循环转换为LINQ?此外,是否有可能进一步减少代码行、提高性能和减少执行时间?Linq用于过滤/选择/投影,而不是变异。 Linq不会给您的问题中的代码带来任何性能优势,并且代码将更难理解。Linq用于过滤/选择/投影,而不是变异。 Linq不会给您的问题中的代码带来任何性能优势,并且代码将更难理解。Linq用于过滤/选择/投影,而不是变异。 Linq不会给您的问题中的代码带来任何性能优势,并且代码将更难理解。Linq用于过滤/选择/投影,而不是变异。 Lin

代码:


如何将上述
foreach
嵌套循环转换为LINQ?此外,是否有可能进一步减少代码行、提高性能和减少执行时间?

Linq用于过滤/选择/投影,而不是变异。
Linq不会给您的问题中的代码带来任何性能优势,并且代码将更难理解。

Linq用于过滤/选择/投影,而不是变异。
Linq不会给您的问题中的代码带来任何性能优势,并且代码将更难理解。

Linq用于过滤/选择/投影,而不是变异。
Linq不会给您的问题中的代码带来任何性能优势,并且代码将更难理解。

Linq用于过滤/选择/投影,而不是变异。

Linq不会给你的问题中的代码带来任何性能优势,代码会更难理解。

@Noobacode,我主要关心这里的性能。请参阅链接@CodingGuru,谢谢链接。我提到了这一点,但在
Linq
格式中使用
ItemCollection
时,我没有找到正确的解决方案。@JohnStephen我认为Linq解决方案在这里是不可能的
RadTreeViewItem
类结构不足以让LINQ使用它:它使用老式的样式,带有索引器属性、
ItemCollection
等。如果您担心性能:LINQ在内部使用
foreach
循环,因此您的代码与使用LINQ的代码相同,甚至更好一点,因为LINQ不会发生委托调用。@MarcinJuraszek,非常感谢。我将保持这段代码的原样。@Noobacode,我主要关心这里的性能。请参阅链接@CodingGuru,谢谢链接。我提到了这一点,但在
Linq
格式中使用
ItemCollection
时,我没有找到正确的解决方案。@JohnStephen我认为Linq解决方案在这里是不可能的
RadTreeViewItem
类结构不足以让LINQ使用它:它使用老式的样式,带有索引器属性、
ItemCollection
等。如果您担心性能:LINQ在内部使用
foreach
循环,因此您的代码与使用LINQ的代码相同,甚至更好一点,因为LINQ不会发生委托调用。@MarcinJuraszek,非常感谢。我将保持这段代码的原样。@Noobacode,我主要关心这里的性能。请参阅链接@CodingGuru,谢谢链接。我提到了这一点,但在
Linq
格式中使用
ItemCollection
时,我没有找到正确的解决方案。@JohnStephen我认为Linq解决方案在这里是不可能的
RadTreeViewItem
类结构不足以让LINQ使用它:它使用老式的样式,带有索引器属性、
ItemCollection
等。如果您担心性能:LINQ在内部使用
foreach
循环,因此您的代码与使用LINQ的代码相同,甚至更好一点,因为LINQ不会发生委托调用。@MarcinJuraszek,非常感谢。我将保持这段代码的原样。@Noobacode,我主要关心这里的性能。请参阅链接@CodingGuru,谢谢链接。我提到了这一点,但在
Linq
格式中使用
ItemCollection
时,我没有找到正确的解决方案。@JohnStephen我认为Linq解决方案在这里是不可能的
RadTreeViewItem
类结构不足以让LINQ使用它:它使用老式的样式,带有索引器属性、
ItemCollection
等。如果您担心性能:LINQ在内部使用
foreach
循环,因此您的代码与使用LINQ的代码相同,甚至更好一点,因为LINQ不会发生委托调用。@MarcinJuraszek,非常感谢。我会保持原样,这是正确的。您可以更进一步,说LINQ将导致轻微的性能损失,因为它将转换为for循环。转换在运行时需要时间。这是正确的。您可以更进一步,说LINQ将导致轻微的性能损失,因为它将转换为for循环。转换在运行时需要时间。这是正确的。您可以更进一步,说LINQ将导致轻微的性能损失,因为它将转换为for循环。转换在运行时需要时间。这是正确的。您可以更进一步,说LINQ将导致轻微的性能损失,因为它将转换为for循环。转换在运行时需要时间。
foreach (var testItem in testItems.TestChildren)
{
    RadTreeViewItem testParent1 = new RadTreeViewItem();
    parent1.Header = NodeHeader(testItem.TestPath, testItem.TestName, TestSelectedPath, TestProjectData);
    testParent1.TestTag = testItem;
    foreach (var testChild in testItem.TestChildren)
    {
        RadTreeViewItem testChildren = new RadTreeViewItem();
        testChildren.TestHeader = NodeHeader(testChild.TestPath, testChild.TestName, TestSelectedPath, TestProjectData);
        testChildren.TestTag = testChild;
        testParent1.Items.Add(testChildren);
    }
    TestParent.TestItems.Add(testParent1);
}