我想使用一些表达式从数据集中获取记录..!
这是我的数据集
这是我的数据集我希望根据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);
请帮我拿到记录..
答案 0 :(得分:0)
答案 1 :(得分:0)
您的查询未正确选择记录。您可以查看此链接以选择范围Select date b/w ranges之间的日期。并使用这个条件。
string expression = PunchDate < YourEndDate AND PunchDate >= your StartDate.