登入介面設計之三 介面搭建

2022-02-01 21:50:58 字數 2207 閱讀 2472

登入介面的搭建還是比較簡單的,雖然有點簡陋,但能用的姑且當做好的吧,如下圖:

這裡使用的是devexpress控制項,其中值得一看的就是使用layoutcontrol控制項來進行textedit控制項的布局。

對於一般幾個textedit併排的布局而言,使用這個控制項的效果還是不錯的。

既然涉及到了系統的登入,那麼自然少不了資料庫的連線等操作了。這裡,我自己做的時候也很亂,爭取能表述的清楚一些。

首先,如果要訪問資料庫,那沒庫不行哈。那麼,就趕著手頭的東西,趕緊弄個庫出來吧。

資料庫建立與表設計

具體流程就是:創立乙個access2007格式的資料庫檔案,這裡名稱為:boardwages.accdb。別忘了給它建立個密碼,不過具體過程就略了,如果有和我一樣的小白,沒關係,咱稍微搜一下就ok了。然後再建立乙個名為tbuser的表,並建立字段,如下圖所示:

其中,id欄位為自動編號;name欄位為文字格式,儲存使用者名稱;password為文字字段,儲存密碼的md5雜湊值。為啥是md5格式?因為這樣別人即使開啟了你的資料庫也無法看到真實的密碼!如果還有人問為啥不能反推,那我也就不能解釋了……

md5函式

1

///2

///md5操作類

3///

4public

class

md5hashing521

return

sb.tostring();22}

23 }

好了,說完資料庫,繼續說資料庫訪問的事。最早,自己學習的時候,學了odbc,還有oledb,再之後的ado.net,直接寫sql**,對於很多像我這樣的小白而言,是很容易出錯的,所以,各位大大們,就弄出了很多的orm元件,解決了小白們的問題。這裡,我使用的是秋大的cyq.data,因為這個接觸的多,用慣了,也確實很好用。還是老規矩,先把**貼上再慢慢說:

1

//使用自定義的方法,利用validate元件進行驗證2//

但要注意的是,需要把控制項的tag屬性進行設定

3if (myvalidator.isempty(txtname,txtpassword) == false)4

78//驗證沒問題之後,獲取控制項內的使用者名稱和密碼

9string name = txtname.text.trim(); //

使用者名稱10

string password = txtpassword.text.trim(); //

密碼11

12//

在資料庫中進行查詢

13using (maction action = new

14'不存在

",name));

18return;19

}20else

21' and password = ''

",name,md5password);

25if (!action.exists(where

))26

30else

3135

}36 }

注意了,包含在using中的**就是使用cyq.data的具體**了,這裡先檢視是否存在使用者名稱,再檢視是否存在使用者名稱和密碼都存在的記錄。**是下午寫的,現在感覺,這裡重複了,直接進行第二組判斷應該就可以了。其中,把判斷條件新增進去,這裡我使用的是string.format方法來組成了字串來當做查詢條件。具體的cyq.data怎麼用,我想沒有比秋大的部落格更好的地方了,大家可以自行搜尋。

2、cshowmsg.showwarning 是自定義的乙個輸出方法,其實就是對於 messagebox.show方法的乙個封裝而已。

3、myvalidator.isempty也是自定義的乙個方法,目的是判斷指定的控制項是否內容為空,如果是,會有相應的提示,例如:

這裡涉及到了fluentvalidation驗證元件的使用,回頭需要專門的用一章來說明。

小結:好了,下午大概就做了這些內容,最後就是在資料庫中手動新增一條記錄,然後自己在登入介面中,使用正確的使用者名稱和密碼進行登入,看是否能夠登入成功以驗證我們資料訪問元件使用的是否正確。寫的比較倉促,有問題的地方,大家多多批評指正。

設計原則三 介面隔離原則

介面隔離原則 inte ce segregation principle,isp 是指用多個專門的介面,而不使 用單一的總介面,客戶端不應該依賴它不需要的介面。這個原則指導我們在設計介面時 應當注意一下幾點 1 乙個類對一類的依賴應該建立在最小的介面之上。2 建立單一介面,不要建立龐大臃腫的介面。3...

介面測試(三)介面測試工具

介面測試工具分類 抓取介面,測試介面 抓包工具分析與抉擇 1.httpwatch ie firefox瀏覽器的外掛程式,較少選擇 2.wireshark 功能齊全龐大,tcp udp都可抓取到,抓取經過電腦的所有請求,看資料比較麻煩,需要新增表示式過濾,一般也不選用 3.fiddler 輕量級,只記...

軟體測試 三 介面測試

有軟體的地方就有介面,就會有介面測試。介面測試是軟體測試中,最多,最繁瑣,最簡單的測試。尤其在本地化測試 多國語言測試 中,有很多的介面測試。介面測試,也叫ui測試 user inte ce testing 本文介紹一些常見的介面測試,以及描述介面bug時所用的術語。閱讀目錄 介面測試的目的 介面測...