我想使用某個表達式從數據集中獲取記錄..!使用表達式從數據集中獲取記錄
這是我的數據集
這是我的數據集我想根據punchDate兩個日期之間獲得regords。
示例:我想要獲取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);
請幫我拿到記錄..
感謝您的快速回復...現在我沒有得到錯誤。但是在dataview中找不到記錄。 –
您是否在數據集中的日期範圍內添加了過濾器?如果幫助,請將其標記爲答案 – Neha
我該如何補充這一點。 –