1. 程式人生 > 其它 >用三層架構寫新增和修改

用三層架構寫新增和修改

ClassInfo.aspx前臺頁面

<div>
名稱:<%--<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>--%>
<input type="text" id="TextBox1" runat="server" required/>
<%-- <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="se--%<%-->rver" ErrorMessage="*必填"></asp:RequiredFieldValidator>--%>
</div>

<br />
<div>
<%-- //MultiLine文字框,textarae--%>
內容:<asp:TextBox ID="TextBox2" runat="server" TextMode="MultiLine"></asp:TextBox>
</div>
<div>
<asp:Button ID="Button1" runat="server" Text="新增" OnClick="Button1_Click" />

<asp:Button ID="Button2" runat="server" Text="取消" PostBackUrl="~/ClassInfo.aspx"/>
</div>

ClassInfoAdd.aspx.cs後臺頁面

雙擊新增按鈕進入一個button事件在時間裡面寫:

//獲取name和content的值
var name = TextBox1.Value;
var content = TextBox2.Text;
Model.ClassInfo info = new Model.ClassInfo()
{
//給Name和Content 賦值
Name = name,
Content = content
};
if (BLL.ClassInfoBLL.Insert(info)>0)
{
Response.Write("<script>alert('新增成功');location='ClassInfo.aspx'</script>");

修改

DAL

public static int Update(ClassInfo info)
{
var sql = "update classinfo set name=@name,content=@content where id=@id";
SqlParameter[] sqlp = new SqlParameter[]
{
new SqlParameter("@id",info.Id),
new SqlParameter("@name",info.Name),

new SqlParameter("@content",info.Content)
};

return Class1.NonQuery(sql, sqlp);
}

BLL

public static int Update(ClassInfo info)
{
return ClassInfoDAL.Update(info);
}

ClassInfoUpdate.aspx頁面

<div>
<%-- //readonly只讀--%>
編號: <input type="text" id="Text1" runat="server" readonly /></div>
<div>
<%-- //required必填項--%>
名稱:<%--<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>--%>
<input type="text" id="TextBox1" runat="server" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*必填" ControlToValidate="TextBox1"></asp:RequiredFieldValidator>
</div>

<br />
<div>
<%-- //MultiLine文字框,textarae--%>
內容:<asp:TextBox ID="TextBox2" runat="server" TextMode="MultiLine"></asp:TextBox>
</div>
<div>
<asp:Button ID="Button1" runat="server" Text="修改" OnClick="Button1_Click" />
<%-- PostBackUrl="~/ClassInfo.aspx" 跳轉到ClassInfo.aspx頁面--%>
<asp:Button ID="Button2" runat="server" Text="取消" PostBackUrl="~/ClassInfo.aspx"/>
</div>

ClassInfo.aspx.cs

protected void Page_Load(object sender, EventArgs e)
{
UnobtrusiveValidationMode = System.Web.UI.UnobtrusiveValidationMode.None;

//伺服器第一次載入非重新整理時
if (!IsPostBack)
{
int id = Convert.ToInt32(Request.QueryString["Id"]);
var info = BLL.ClassInfoBLL.Select(id);
if (info != null)
{
Text1.Value = info.Id + "";
TextBox1.Value = info.Name;
TextBox2.Text = info.Content;
}
else
{
Response.Redirect("ClassInfo.aspx");
}
}

}

修改按鈕雙擊

protected void Button1_Click(object sender, EventArgs e)
{
Model.ClassInfo info = new Model.ClassInfo()
{
Id = Convert.ToInt32(Text1.Value),
Name = TextBox1.Value,
Content = TextBox2.Text
};
if (BLL.ClassInfoBLL.Update(info)>0)
{
Response.Write("<script>alert('修改成功');location='ClassInfo.aspx'</script>");
}
}
}
}