如何在数据集中设置存储过程选择日期并在 C# 代码中检索它?
How to set storedprocedure selected datas in a dataset and retrive it in a c# code?
我正在尝试 select 通过存储过程从数据库中获取一些批量数据。我已经编写了程序,但我不知道如何在数据集中设置这些结果以及如何在 C# 代码中检索此数据集。我的程序是
ALTER PROCEDURE [dbo].[Leavetypedetails Report](
@code nvarchar(50)
)
AS
declare @dataset as nvarchar(50)
BEGIN
select EmpCode,LeaveType,FromDate,Todate,Noofleave,Balance,Transfer,cash from LeaveTypeDetails where EmpCode=@code
END
我想在数据集中设置这个结果,并想在我的 C# 代码中检索。我的密码是
public string leavestatus(string code, DateTime date1, DateTime date2, int month, int year, int dept, string value)
{
string data = "";
SqlCommand cmd = new SqlCommand("Leavetypedetails Report");
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@code", SqlDbType.NVarChar).Value = code;
conn.nonquery(cmd);
return data;
}
protected void view_Click(object sender, Event Args e)
{
??I want to show the rerun data in a grid-view(GridView1)
}
我知道这是一个冗长的问题,尽管希望得到您的帮助...提前致谢
试试这个
public DataTable leavestatus(string code, DateTime date1, DateTime date2,
int month, int year, int dept, string value)
{
string data = "";
DataSet dstData = new DataSet("Data");
SQLDataAdapter adpData;
adpData = new SQLDataAdapter("Leavetypedetails Report", conn);
adpData.SelectCommand.Parameters.Add("@code", SqlDbType.NVarChar).value = code;
adpData.SelectCommand.CommandType = CommandType.StoredProcedure;
adpData.Fill(dstData);
return dstData.tables[0];
}
protected void view_Click(object sender, Event Args e)
{
Grid.Datasource = leavestatus(.....);
Grid.DataBind();
}
public void bindgrid()
{
SqlConnection con = new SqlConnection(connStr);
SqlDataAdapter adapter = new SqlDataAdapter();
DataSet ds = new DataSet();
con.Open();
SqlCommand cmd = new SqlCommand(connStr, con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "your sp";
cmd.ExecuteNonQuery();
adapter = new SqlDataAdapter(cmd);
adapter.Fill(ds);
Session["datasource"] = ds; // In case u want to store ur dataset in session and use it anywhere further
Gridview1.DataSource = ds.Tables[0];
Gridview1.DataBind();
}
我正在尝试 select 通过存储过程从数据库中获取一些批量数据。我已经编写了程序,但我不知道如何在数据集中设置这些结果以及如何在 C# 代码中检索此数据集。我的程序是
ALTER PROCEDURE [dbo].[Leavetypedetails Report](
@code nvarchar(50)
)
AS
declare @dataset as nvarchar(50)
BEGIN
select EmpCode,LeaveType,FromDate,Todate,Noofleave,Balance,Transfer,cash from LeaveTypeDetails where EmpCode=@code
END
我想在数据集中设置这个结果,并想在我的 C# 代码中检索。我的密码是
public string leavestatus(string code, DateTime date1, DateTime date2, int month, int year, int dept, string value)
{
string data = "";
SqlCommand cmd = new SqlCommand("Leavetypedetails Report");
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@code", SqlDbType.NVarChar).Value = code;
conn.nonquery(cmd);
return data;
}
protected void view_Click(object sender, Event Args e)
{
??I want to show the rerun data in a grid-view(GridView1)
}
我知道这是一个冗长的问题,尽管希望得到您的帮助...提前致谢
试试这个
public DataTable leavestatus(string code, DateTime date1, DateTime date2,
int month, int year, int dept, string value)
{
string data = "";
DataSet dstData = new DataSet("Data");
SQLDataAdapter adpData;
adpData = new SQLDataAdapter("Leavetypedetails Report", conn);
adpData.SelectCommand.Parameters.Add("@code", SqlDbType.NVarChar).value = code;
adpData.SelectCommand.CommandType = CommandType.StoredProcedure;
adpData.Fill(dstData);
return dstData.tables[0];
}
protected void view_Click(object sender, Event Args e)
{
Grid.Datasource = leavestatus(.....);
Grid.DataBind();
}
public void bindgrid()
{
SqlConnection con = new SqlConnection(connStr);
SqlDataAdapter adapter = new SqlDataAdapter();
DataSet ds = new DataSet();
con.Open();
SqlCommand cmd = new SqlCommand(connStr, con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "your sp";
cmd.ExecuteNonQuery();
adapter = new SqlDataAdapter(cmd);
adapter.Fill(ds);
Session["datasource"] = ds; // In case u want to store ur dataset in session and use it anywhere further
Gridview1.DataSource = ds.Tables[0];
Gridview1.DataBind();
}