【发布时间】:2012-02-16 14:17:56
【问题描述】:
我想使用某个表达式从数据集中获取记录..!
这是我的数据集
这是我的数据集,我想根据 punchDate 获取两个日期之间的记录。
示例:我想获取03-01-2012 到25-01-2012 之间的记录意味着它返回正确的记录。
假设我只是将03-12-2011 之类的日期输入到25-01-2012 意味着它返回错误。
错误:源不包含 DataRows;
我在这里附上了我的代码:
protected void findbyexpression(string Expression)
{
try
{
DataTable dt1 = new DataTable();
DataSet4TableAdapters.sp_getalltimesheetTableAdapter TA = new DataSet4TableAdapters.sp_getalltimesheetTableAdapter();
DataSet4.sp_getalltimesheetDataTable DS = TA.GetData();
DataTable DT = new DataTable();
DT = DS[0].Table;
DataRow[] foundRows;
foundRows = DT.Select(Expression);
if (DT.Rows.Count == 0)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('No records found for request query');</script>", false);
}
else
{
panheader.Visible = true;
dt1 = foundRows.CopyToDataTable();
Session["TaskTable"] = dt1;
grdvw.DataSource = Session["TaskTable"];
grdvw.DataBind();
}
}
catch (Exception e2)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('" + e2.Message + "');</script>", false);
}
}
表达式为:
string expression = "PunchDate >= '" + txtfromdate.Text + "' and PunchDate <= '" + txttodate.Text + "'";
findbyexpression(expression);
请帮我获取记录..
【问题讨论】: