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 分钟后找到了解决方案。林克。

列出 productShortDataIds = (从 productShortData 中的数据中选择 datas.Id).ToList();

4

1 回答 1

5

您可以使用 LINQ投影结构列表:

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