/ / Linq: सूची में प्रत्येक नोड के बाएं और दाएं बच्चे को लेकर एक सूची बनाना - c #, linq

Linq: एक सूची में प्रत्येक नोड के बाएं और दाएं बच्चे को लेकर एक सूची बनाना - c #, linq

मेरे पास एक सूची नोड है जहां नोड है

public class Node
{
public Node Left
public Node Right
}

मैं "एक सूची निकालना चाहता हूँ जो इस प्रकार दिखती है:

{nodes[0].Left, nodes[0].Right, nodes[1].Left, nodes[1].Right, ...}

मैं एग्रीगेट, कॉनसैट, सिलेक्ट और सेलेमनी के साथ कोशिश कर रहा हूं

उत्तर:

जवाब के लिए 3 № 1

SelectMany के साथ

var result = list.SelectMany(x=>new List<Node>(){x.Left, x.Right}).ToList();

जवाब के लिए 0 № 2

इसे इस्तेमाल करे:

var qry =
from node in nodes
let nodeValues = new Node[] { node.Left, node.Right }
from subnode in nodeValues
select subnode;

यह अंततः एक में प्रतिबंध होगा SelecMany, केवल क्वेरी सिंटैक्स में।