1. 程式人生 > 其它 >三層新增以及HTML控制元件和web控制元件的區別

三層新增以及HTML控制元件和web控制元件的區別

html伺服器控制元件
其實就是html控制元件的基礎上加上runat="server"所構成的控制元件。
它們的主要區別是執行方式不同,html控制元件執行在客戶端,而html伺服器控制元件是執行在伺服器端的。


web伺服器控制元件
也稱asp.net伺服器控制元件,是Web Form程式設計的基本元素,也是asp.net所特有的。
它會按照client的情況產生一個或者多個html控制元件,而不是直接描述html元素

web伺服器控制元件和html伺服器控制元件有什麼區別
1、Asp.net伺服器控制元件提供更加統一的程式設計介面,如每個Asp.net伺服器控制元件都有Text屬性。
2、隱藏客戶端的不同,這樣程式設計師可以把更多的精力放在業務上,而不用去考慮客戶端的瀏覽器是ie還是firefox,或者是移動裝置。
3、Asp.net伺服器控制元件可以儲存狀態到ViewState裡,這樣頁面在從客戶端回傳到伺服器端或者從伺服器端下載到客戶端的過程中都可以儲存。
4、事件處理模型不同,Html標籤和Html伺服器控制元件的事件處理都是在客戶端的頁面上,而Asp.net伺服器控制元件的事件處理則是在伺服器上

新增DAL層

*/
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        public static int Insert(ClassInfo info)
        {
            var sql = "insert into ClassInfo values(@name , @Comment)";
            SqlParameter[] sqlParameters 
= new SqlParameter[] { new SqlParameter("@name",info.Name), new SqlParameter("@Comment",info.Comment) }; return SqlHelper.NonQuery(sql,sqlParameters); }

BLL層

/// <summary>
        /// 新增
        /// </summary>
        ///
<param name="info"></param> /// <returns></returns> public static int Insert(ClassInfo info) { return ClassInfoDAL.Insert(info); }

UI層

/// <summary>
        /// 新增
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Click(object sender, EventArgs e)
        {
            var name = TextBox1.Value;
            var commet = TextBox2.Text;

            Text.model.ClassInfo info = new Text.model.ClassInfo()
            {
                Name = name,
                Comment=commet

            };
            if (BLL.ClassInfoBLL.Insert(info)>0)
            {
                Response.Write("<script>alert('新增成功');location='ClassInfo.aspx'</script>");
                //Response.Redirect("ClassInfo.aspx");
            }
        }