ASP.NET 快速構建應用程式頁面主架構

來源:互聯網
上載者:User
ASP.NET 的出現給web 程式設計帶來了一場革命,它具有windows 那種即見即所得的快捷,高度的封裝給程式設計降低了難度,豐富的介面控制項提高了軟體設計的效率因而也縮短了開發週期,程式碼後置和分離技術使的程式的可讀性和可維護性大大提高,加之ADO.NET資料庫訪問技術,將windows的程式設計思想完全容入到web設計之中。下面是我使用其構建一個系統整體構架的簡單練習:

1、登入頁面:

首先是一個登入使用者的驗證,接著是一系統公告和一個跑馬燈的公告提示,最後是一些串連及著作權說明。前台完全用WebControls 來作,後台使用C#編碼來實現使用者的登入使用者名稱及密碼和資料庫中儲存的資料進行比較驗證,正確則登入並且將使用者的userid和username 賦給全域變數Session["userid"]和Session["username"]以便在後面的頁面上驗證Session來判斷使用者是否一登入,將頁面定向到Index.aspx,若驗證使用者名稱或密碼失敗則給出響應的提示資訊,實現代碼如下:

private void imgbtnLogin_Click(object sender, System.Web.UI.ImageClickEventArgs e)
  {
   //判斷使用者名稱、密碼是否錄入
   string username = txtUserName .Text .Trim ();
   string userpasw = txtPassword .Text .Trim ();
   string SqlUser    = "select * from Users  where UserID = '" + username + "'";

   DataSet UserDtset = new DataSet();

   UserDtset         = login.GetDataSet (SqlUser);   
   //判斷使用者名稱是否存在
   int SqlCount      = UserDtset.Tables[0].Rows.Count;
   if (SqlCount == 0)
   {
    ShowMessage("使用者名稱不存在,請重新錄入!",Page);
    return;     
   }
   //判斷密碼是否正確
   string passwd = UserDtset.Tables[0].Rows[0]["password"].ToString();
   if (passwd != userpasw)
   {
    ShowMessage("密碼不正確,請重新錄入!",Page);
    return;
   }
   //賦給全域變數值
   Session["UserID"]=UserDtset .Tables [0].Rows [0]["UserID"].ToString ();
   Session ["UserName"]=UserDtset .Tables [0].Rows [0]["Name"].ToString ();
   Response .Redirect ("index.aspx");

}

//提示資訊

  private void ShowMessage(string MsgText,System.Web.UI.Page PageObject)
  {   
   StringBuilder SList = new StringBuilder();
   SList.Append("<script language =javascript>\n");
   SList.Append("alert('"+MsgText +"');\n");
   SList.Append("</script>");
   PageObject.RegisterStartupScript("",SList.ToString());       
  }

login.aspx中的其它部分 如:公告使用控制項DataGrid將資料庫中的資料讀出來即可。

2、Index.aspx頁面是程式的首頁面 主要包括三部分 頂部一個Banner 、左邊是一個TreeVew、右邊是用於顯示的主操作區,左邊的Treeview 主要用於導航,這個一面主要使用的Fram 將幾個頁面拼接起來形成一個頁面 後台代碼:

private void Page_Load(object sender, System.EventArgs e)
  {
   if(!IsPostBack)
   {
    if(Session ["UserName"]==null )//斷Session若為空白則跳轉到登入頁面
       Response .Redirect ("Check.aspx");
   }
  }

這裡使用了一個驗證頁面Check.aspx 若使用者沒有登入或者是Session逾時都會轉到此頁面後三秒鐘後轉到登入頁面,次頁面有有提示資訊:沒有登入或者登入逾時請重新登入;

3、我的需求和我提出的需求頁面 主要是由主細目組成 都可以使用控制項綁定資料庫來完成,比較簡單不再詳述。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.