我學習業務邏輯和數據邏輯以及程序的可讀性。使用存儲過程的文本框值到數據庫
我有一個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
}
我如何連接三個全部?我知道文本框的值需要分配給存儲過程參數,但是怎麼做?
在此先感謝,抱歉,如果這太長,試圖盡我所能解釋它。
在你DL層,你會想不同的方法插入和檢索數據。插入方法可能返回的唯一情況是插入的記錄數量和/或遇到的任何錯誤。一旦你做出分離,層之間的連接將變得簡單。 – JRLambert 2014-10-10 19:34:41
我會在這裏留下這個。 http://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue-already/ – 2014-10-10 19:35:18
@JRLambert我的確有分離插入方法和檢索數據 – Noonmoon 2014-10-10 19:41:12