サンプル クラス:
public class ProductData
{
private Guid ProductID { get; set; }
private string ProductDescription { get; set; }
public ProductData(Guid pID, string pDescription)
{
this.ProductID = pID;
this.ProductDescription = pDescription;
}
}
ProductData のリストを作成します。
private static List<ProductData> GetProductDataList()
{
// code to populate DataSet ds here
DataTable dtReport = ds.Tables[0];
List<AssetData> lstProductData = new List<ProductData>();
int index = 1;
foreach (DataRow row in dtReport.Rows)
{
lstProductData.Add(new ProductData(new Guid(row["ProductID"].ToString()), row["Product"].ToString()));
index++;
}
return lstProductData.ToList();
}
コードは完全に正常に機能し、期待どおりに機能します。しかし、 LINQ を使えばforeach ループは回避できると思います。さまざまな理由から、可能な限り LINQ を利用するようにしています (コードの見た目がすっきりしていることが理由の 1 つです。間違っている場合は修正してください)。
LINQ を使用して最小限のコードで上記と同じことを達成する方法はありますか。