我在網路上找到這個範例
DataTable dt = this._dbModule.ParaGetDataTable(mySql.SqlCommand, mySql.SqlParams);
if (dt != null && dt.Rows.Count > 0)
{
IQueryable<CsvDaReport> query =
from r in dt.AsEnumerable().AsQueryable()
select new CsvDaReport()
{
DaGenDate = r["DaGenDate"].ToString(),
CsvName = r["CsvName"].ToString(),
//...
};
return query;
}
public partial class CsvDaReport
{
public string DaGenDate { get; set; }
public string CsvName { get; set; }
//...
}
此外我也在Stack Overflow找到以下解答
private IEnumerable<TankReading> ConvertToTankReadings(DataTable dataTable)
{
foreach (DataRow row in dataTable.Rows)
{
yield return new TankReading
{
TankReadingsID = Convert.ToInt32(row["TRReadingsID"]),
TankID = Convert.ToInt32(row["TankID"]),
ReadingDateTime = Convert.ToDateTime(row["ReadingDateTime"]),
ReadingFeet = Convert.ToInt32(row["ReadingFeet"]),
ReadingInches = Convert.ToInt32(row["ReadingInches"]),
MaterialNumber = row["MaterialNumber"].ToString(),
EnteredBy = row["EnteredBy"].ToString(),
ReadingPounds = Convert.ToDecimal(row["ReadingPounds"]),
MaterialID = Convert.ToInt32(row["MaterialID"]),
Submitted = Convert.ToBoolean(row["Submitted"]),
};
}
}
|