DataTablez转List对象效率慢的问题.

#region 代码生成部分

 DateTime? tmp = null;
/*StringBuilder codeStr = new StringBuilder("");
foreach(DataColumn col in dt.Columns)
{
string fiedType = col.DataType.Name.ToString().ToLower();
codeStr.AppendLine("");
codeStr.Append(col.ColumnName+"=");
switch (fiedType)
{
case "string":
codeStr.Append($"row[\"{col.ColumnName}\"]==DBNull.Value?null:row[\"{col.ColumnName}\"].ToString()");
break;
case "decimal":
codeStr.Append($"row[\"{col.ColumnName}\"]==DBNull.Value?0:Convert.ToDecimal(row[\"{col.ColumnName}\"])");
break;
case "int":
codeStr.Append($"row[\"{col.ColumnName}\"]==DBNull.Value?0:Convert.ToInt32(row[\"{col.ColumnName}\"])");
break;
case "datetime":
codeStr.Append($"row[\"{col.ColumnName}\"]==DBNull.Value?tmp :Convert.ToDateTime(row[\"{col.ColumnName}\"])");
break;
default:
{
throw new Exception("");
}
}
codeStr.Append( ",");
}
string sss = codeStr.ToString();*/
#endregion

//CONVERS_YSQZ_YEARCOMPARED_VIEWEntity  实体类

//1.该方法返回的数据为  IEnumerable<CONVERS_YSQZ_YEARCOMPARED_VIEWEntity>

//2.把生成的代码部分copy入下面的赋值部分.

return dt.AsEnumerable().Select(row => new CONVERS_YSQZ_YEARCOMPARED_VIEWEntity
{

   //字段

   VERSION = row["VERSION"] == DBNull.Value ? null : row["VERSION"].ToString(),
   NAME = row["NAME"] == DBNull.Value ? null : row["NAME"].ToString(),

 }).ToList();

 

posted on 2020-09-11 16:44  只为_更加优秀!  阅读(354)  评论(0编辑  收藏  举报

导航