我正在学习业务逻辑和数据逻辑以及程序的可读性。
我有1个带有所有存储过程的DL(数据逻辑)类,然后有一个连接DL和BL的BL(业务逻辑)。然后,我有一个表单类,可以在其中添加新用户到数据库。如何连接表格BL和DL?DL类存储过程:
public DataSet InsertClubRoles(int RoleID, string Roledesc, string Createdby)
{
DataSet mydataset = new DataSet();
SqlCommand cmdclubroles = new SqlCommand();
//get stored procedure
cmdclubroles.CommandText = "usp_insertrlubroles";
cmdclubroles.CommandType = CommandType.StoredProcedure;
//connect
cmdclubroles.Connection = jadcoreConnection.GetConnection();
//parameters
cmdclubroles.Parameters.AddWithValue("@RoleID", Convert.ToInt32(RoleID));
cmdclubroles.Parameters.AddWithValue("@Roledesc", Roledesc);
cmdclubroles.Parameters.AddWithValue("@Createdby", Createdby);
SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(cmdclubroles);
mySqlDataAdapter.Update(mydataset);
return mydataset;
}
这是业务逻辑:
public DataSet insertingclubroles(int RoleID, string Roledesc, string Createdby)
{
DataSet ids = new DataSet();
ids = new GetClubRoles().InsertClubRoles(RoleID, Roledesc, Createdby);
return ids;
}
最后,这是提交按钮和保存角色方法的另一种形式:
private void Savebtn_Click(object sender, EventArgs e)
{
try
{
saverole();
MessageBox.Show("Club role saved successfuly");
}
catch (Exception er)
{
MessageBox.Show(er.Message.ToString());
}
}
public void saverole()
{
ClubRoles cr = new ClubRoles();
cr.insertingclubroles(2,"as","me");
//need text for description
//need select which client is selected
}
如何连接所有三个?我知道文本框值需要分配给存储过程参数,但是如何?
在此先感谢您,如果时间过长,请尽我所能解释。
要手动插入数据,您应该在上使用.ExecuteNonQuery
方法SqlCommand
-类似于:
public void InsertClubRoles(int RoleID, string Roledesc, string Createdby)
{
using (SqlCommand cmdclubroles = new SqlCommand())
{
// get stored procedure
cmdclubroles.CommandText = "usp_insertrlubroles";
cmdclubroles.CommandType = CommandType.StoredProcedure;
// connection
cmdclubroles.Connection = jadcoreConnection.GetConnection();
// parameters
cmdclubroles.Parameters.AddWithValue("@RoleID", Convert.ToInt32(RoleID));
cmdclubroles.Parameters.AddWithValue("@Roledesc", Roledesc);
cmdclubroles.Parameters.AddWithValue("@Createdby", Createdby);
// execute the INSERT statement
cmdclubroles.Connection.Open();
cmdclubroles.ExecuteNonQuery();
cmdclubroles.Connection.Close();
}
}
更新:将文本框中的值传递给SaveRole
方法-向其中添加一些参数!
public void SaveRole(int RoleID, string RoleDesc, string CreatedBy)
{
ClubRoles cr = new ClubRoles();
cr.insertingclubroles(RoleID, RoleDesc, CreatedBy);
//need text for description
//need select which client is selected
}
然后从表单的save方法中设置以下参数:
private void Savebtn_Click(object sender, EventArgs e)
{
try
{
SaveRole(Convert.ToInt32(tbxRoleID.Text), tbxRoleDesc.Text, tbxCreatedBy.Text);
MessageBox.Show("Club role saved successfully");
}
catch (Exception er)
{
MessageBox.Show(er.Message.ToString());
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句