亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于.net的用戶定義驗(yàn)證控件的應(yīng)用分析

        2020-11-30 08:54:09曾凡秩
        中文信息 2020年10期
        關(guān)鍵詞:用戶名控件代碼

        曾凡秩

        摘?要:在應(yīng)用.net和c#進(jìn)行應(yīng)用系統(tǒng)開發(fā)時經(jīng)常會用到驗(yàn)證控件,其中的CustomValidator驗(yàn)證控件,除了配置好基本的參數(shù)外,還要配置特殊的參數(shù),同時還要自己編程實(shí)現(xiàn)驗(yàn)證的功能。本文就如何用此驗(yàn)證控件實(shí)現(xiàn)用戶自己的特殊驗(yàn)證(比如在注冊時用戶名已存在的驗(yàn)證)進(jìn)行了探討。

        關(guān)鍵詞:.net?自定義驗(yàn)證控件?CustomValidator

        中圖分類號:G202?文獻(xiàn)標(biāo)識碼:A?文章編號:1003-9082(2020)10-00-01

        在應(yīng)用.net和c#進(jìn)行應(yīng)用系統(tǒng)開發(fā)時經(jīng)常會用到Required Field Validator等驗(yàn)證控件,除Custom Validator的其他控件,只要設(shè)置好相關(guān)參數(shù)后,一般都能起到正常驗(yàn)證數(shù)據(jù)的作用。而Custom Validator驗(yàn)證控件,除了配置好基本的參數(shù)外,還要配置特殊的參數(shù),同時還要自己編程實(shí)現(xiàn)驗(yàn)證的功能。對CustomValidator控件如何引用、如何設(shè)置相關(guān)參數(shù)以及編程實(shí)現(xiàn)驗(yàn)證,同時達(dá)到和常規(guī)驗(yàn)證控件相似的效果等進(jìn)行探討和驗(yàn)證。

        一、在TextBox數(shù)據(jù)控件后添加驗(yàn)證控件

        如下圖在該網(wǎng)頁實(shí)現(xiàn)通過調(diào)用數(shù)據(jù)庫來實(shí)現(xiàn)用戶功能,在用戶名的右邊加入用戶驗(yàn)證控件,用來判斷要注冊的用戶名是否存在,若存在,則不能注冊。

        1.在注冊頁面中與自定義驗(yàn)證控件相關(guān)的頁面代碼如下:

        用戶名:

        ontextchanged=”txtName_TextChanged”>

        ControlToValidate=”txtName” onservervalidate=”CustomValidator1_ServerValidate”>

        2.該驗(yàn)證控件的后臺代碼如下:

        protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)

        {String connStr = ConfigurationManager.ConnectionStrings[“l(fā)ink2”].ToString();

        SqlConnection conn = new SqlConnection(connStr);?conn.Open();

        string sqlStr = “select count(*) from manage where userName=” + txtName.Text + “”;

        SqlCommand sc = new SqlCommand(sqlStr, conn);

        int num = int.Parse(sc.ExecuteScalar().ToString());

        conn.Close();?args.IsValid = true;

        if (num > 0) args.IsValid = false; }

        3.在用戶名數(shù)據(jù)框中輸入名字時要以上能夠驗(yàn)證用戶名是否存在,則要給該數(shù)據(jù)控件添加一個事件txtName_TextChanged,該事件引發(fā)驗(yàn)證,代碼如下:

        protected void txtName_TextChanged(object sender, EventArgs e)

        {具體驗(yàn)證代碼同上面斜體字部分。

        CustomValidator1.IsValid = true;

        if (num > 0) CustomValidator1.IsValid = false; }

        4.注冊功能代碼:

        protected void btnRegister_Click(object sender, EventArgs e)

        {if (Page.IsValid == true)

        { //把數(shù)據(jù)寫入數(shù)據(jù)庫}}

        二、在實(shí)現(xiàn)自定義驗(yàn)證控件時要注意的幾個事項(xiàng):

        1.要實(shí)現(xiàn)對用戶名的存在性驗(yàn)證,不能用普通驗(yàn)證控件,只能用自定義驗(yàn)證控件CustomValidator。

        2.實(shí)現(xiàn)馬上驗(yàn)證,只有給被驗(yàn)證的用戶名框引入文本改變事件txt Name_Text Changed,而且被驗(yàn)證的文本框要設(shè)置屬性Auto Post Back="True",服務(wù)器在這個文本發(fā)生改變時立馬可以進(jìn)行數(shù)據(jù)庫查詢驗(yàn)證。

        3.一定要明確驗(yàn)證控件的錯誤信息,是在其屬性args.IsValid值為false時才顯示出來。在txtName_TextChanged事件中進(jìn)行驗(yàn)證時要用驗(yàn)證控件的名字來引用,如CustomValidator1.IsValid。

        4.在注冊時,在把用戶名插入到數(shù)據(jù)庫前一定要判斷頁面的有效性,即if (Page.IsValid == true){注冊代碼},否則會執(zhí)行注冊代碼,同名的用戶也會再次寫入數(shù)據(jù)庫。

        結(jié)語

        驗(yàn)證控件是錄入數(shù)據(jù)的第一道安全屏障,而自定義驗(yàn)證控件是解決普通驗(yàn)證控件無法實(shí)現(xiàn)的驗(yàn)證任務(wù),用.net和C#開發(fā)應(yīng)用系統(tǒng)中經(jīng)常要用到的。就本文而言,有助于初次開發(fā)者自定義驗(yàn)證控件CustomValidator編程的基本思路,掌握它的基本用法,從而為開發(fā)出一個安全穩(wěn)定的系統(tǒng)打下堅(jiān)實(shí)的基礎(chǔ)。要用到的關(guān)鍵屬性和事件有:AutoPostBack="True",CustomValidator1.IsValid=”True”, args.IsValid, Page.IsValid, txtName_TextChanged。

        參考文獻(xiàn)

        [1]陳巧莉,楊亨東,吳夢蘭. ASP.NET項(xiàng)目開發(fā)一體化教程[M].上海:上海交通大學(xué)出版社,2017.

        [2]張領(lǐng).ASP NET項(xiàng)目開發(fā)全程實(shí)錄[M].北京:清華大學(xué)出版社,2018.

        [3]Daniel Cazzulino等.C#Web應(yīng)用程序入門經(jīng)典[M].北京:清華大學(xué)出版社,2003.

        猜你喜歡
        用戶名控件代碼
        《護(hù)士進(jìn)修雜志》投稿程序
        創(chuàng)世代碼
        動漫星空(2018年11期)2018-10-26 02:24:02
        創(chuàng)世代碼
        動漫星空(2018年2期)2018-10-26 02:11:00
        創(chuàng)世代碼
        動漫星空(2018年9期)2018-10-26 01:16:48
        創(chuàng)世代碼
        動漫星空(2018年5期)2018-10-26 01:15:02
        關(guān)于.net控件數(shù)組的探討
        軟件(2018年7期)2018-08-13 09:44:42
        機(jī)智的快遞員
        故事會(2017年17期)2017-09-04 17:36:42
        就這樣玩會VBA中常見的自定義控件
        電腦迷(2012年24期)2012-04-29 00:44:03
        ESET NOD32專家答疑等
        輕輕松松……在線制作電子書
        亚洲精品中文字幕乱码人妻| 久久久久亚洲av成人网人人网站| 久久无码专区国产精品s| 性饥渴艳妇性色生活片在线播放| 亚洲日本在线va中文字幕| 韩国日本在线观看一区二区| 东京热加勒比视频一区| 欧美成人猛片aaaaaaa| 国产成人亚洲综合色婷婷| 美女扒开内裤让男生桶| 国产不卡视频一区二区在线观看 | 午夜亚洲精品视频网站| 亚洲一区二区三区激情在线观看| 在线观看特色大片免费视频| 久久亚洲精品无码va白人极品| 狠狠躁夜夜躁人人爽天天| 日本少妇爽的大叫高潮了| 国产一区二区中文字幕在线观看| 国产欧美在线观看不卡| 亚洲av无码国产精品色软件下戴| 成年男女免费视频网站| 开心五月婷婷综合网站| av免费观看网站大全| 欧美熟妇另类久久久久久不卡 | 少妇内射视频播放舔大片| 亚洲国产免费公开在线视频| 熟女人妻一区二区三区| 午夜dy888国产精品影院| 色哟哟网站在线观看| 北岛玲日韩精品一区二区三区| 美女被搞在线观看一区二区三区| 日本午夜理论片在线观看| 一区二区三区av波多野结衣| av无码精品一区二区三区四区| 日本亚洲一级中文字幕| 国产天堂av在线播放资源| 久久理论片午夜琪琪电影网| 国产欧美日韩一区二区三区在线| 国产成人香蕉久久久久| 亚洲国产91高清在线| 99久久精品免费看国产|