1

構造体を作成しました:

 public struct ProductShortInfo
            {
                public Guid Id { get; set; }

                public string Code { get; set; }

                public string Name { get; set; }

                public string PhotoUrl { get; set; }

                public string DownloadUrl { get; set; }
            }

public string PopulateStruct()
{
    List<ProductShortInfo> productShortData;

    using (SomeService service = new SomeService())
    {
         productShortData = service.populateShortData();
    }

    List<Guid> guidsFromProductShortData = //NEED SOLUTION
}

後でリストで使用するために返されたIDを分離したいのですが、適切な方法がわかりません。foreachループは非常にエレガントな方法ではないと思います。おそらくそれを行うための組み込みのメソッドがあります。

編集:5分以内に解決策を見つけました。Linq。

リストproductShortDataIds=(productShortDataのデータからselect datas.Id).ToList();

4

1 に答える 1

5

LINQを使用して構造体のリストを投影できます。

List<Guid> guids = productShortData.Select(p => p.Id).ToList();
于 2013-03-15T12:12:26.763 に答える