簡體   English   中英

使用Linq選擇Id(s)

[英]Select Id(s) using Linq

我有一個名為products的DynamicNode產品,它有產品名稱和產品ID。 我需要使用LINQ從DynamicNode產品中選擇所有產品id到數組。

我試過類似的東西

 @helper PrintProductYearChart(IEnumerable<DynamicNode> products)
{

    var res = products.select(x => x.filelds['Id']).ToAarray();
}

但它不能正常工作。

任何人都可以提供幫助。謝謝

Select LINQ運算符將序列的每個元素投影到新表單中。 你在做什么只會投射一個'Id'作為索引的元素,所以它只返回一個元素而不是Id的數組

在這里你應該指明你想要的ID

   @helper PrintProductYearChart(IEnumerable<DynamicNode> products)
    {

        var res = products.select(x => x.Id).ToArray();
    }
class Program
{
    static void Main(string[] args)
    {
        var collection = new List<DynamicNode>(){
            new DynamicNode { Id = "1", Name = "name1"},
            new DynamicNode { Id = "2", Name = "name2"}
        };

        //Getting Ids using extension methods and lambda expressions
        string[] Ids = collection.Select(x => x.Id).ToArray();

        foreach (string id in Ids)
            Console.WriteLine(id);

        //Gettings ids using linq expression
        var linqIds = from s in collection
                           select s.Id;
        string[] lIds = linqIds.ToArray();

        foreach (string id in lIds)
            Console.WriteLine(id);

        Console.Read();
    }
}

class DynamicNode
{
    public string Id { get; set;}
    public string Name { get; set; }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM