日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

从零开始学ASP.NET(基础篇)

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从零开始学ASP.NET(基础篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原作者:藍鯨出處:5D多媒體

學ASPNET與ASP有區別,這種區別不是語言上的,而是思路上的區別。ASP是純面向過程的,而ASPNET是完全面向對向的。這種區別使我們在編程的結構設計上要與ASP有很大的不同。
廢話少說了,現在我也和各位一起從零開始。我用C#,其實用VB.NET的朋友也應該可以看懂,我會在不同之處說明一些區別的。

  第一天

  學習目的:

  掌握最基本的Label、TextBox、Button控件用法

  掌握用StringBuider類連接字符串

  理解服務器的環境變量


  StringBuilder類:
  命名空間是:System.Text。

  StringBuilder類是個高效的類,StringBuilder.Append連接字符串的方法是非常快的。用于連接大量的字符串,其速度的優越性就會體現出來。

  先舉幾個例子:
在cs或vb文件的頭部加上

  


[C#]using System.Text;
[VB]Imports System.Text

[C#]StringBuilder sbFirst = new StringBuilder();
sbFirst.Append(“這是第一個學ASPNET的例子</br>”);
sbFirst.Append( “這個例子太簡單</br>”);
sbFirst.Append( “連三歲小陔都會做,我早知道了,嘿嘿。”);
Response.Write(sbFirst.ToString());

[VB]Dim sbFirst As StringBuilder = New StringBuilder()
sbFirst.Append(“這是第一個學ASPNET的例子</br>”)
sbFirst.Append( “這個例子太簡單</br>”)
sbFirst.Append( “連三歲小陔都會做,我早知道了,嘿嘿。”)
Response.Write(sbFirst.ToString)

  下面就可以做正題了:
  先建立一個C#的WEB應用程序工程,這廢話我就少說了吧。
  放一個Button控件:ID為btnShowVariable
  放一個Label控件:ID為labServerVariable

  添加Button的單擊事件,如下代碼:

  


private void btnShowVariable_Click(object sender, System.EventArgs e)
{
labServerVariables.Text = "";

StringBuilder info = new StringBuilder();

foreach (object objVar in Request.ServerVariables)
{
info.Append("<span style='font-size:9pt'>");
info.Append(objVar.ToString());
info.Append(" = <font color=blue>");
info.Append(Request.ServerVariables[objVar.ToString()]);
info.Append("</font></span><br>");
}

labServerVariables.Text = info.ToString();
}


  結果顯示如下:

  

  這樣我們就可以這樣用:

  


Response.Write(Request.ServerVariables["REMOTE_ADDR"]); // IP地址
Response.Write("<BR>");
Response.Write(Request.ServerVariables["URL"]); // 網頁的URL

  第二天

  學習目的:

  掌握文本框的用法

  初次接觸try…catch…語法

  今天內容很輕松,用一個例子,輸入年月日,判斷輸入是否正確

  

  用個文本框,ID分別為txtYear,txtMonth,txtDate;
  檢驗按鈕的代碼為:

   private void  btnCheck_Click(object sender, System.EventArgs e)
{
int year, month, date;


// 先把輸入的字符轉成int類型,如果非數字型,
// 會觸發錯誤
try
{
year = Convert.ToInt32(txtYear.Text);
month = Convert.ToInt32(txtMonth.Text);
date = Convert.ToInt32(txtDate.Text);
}
catch
{
labCheckInfo.Text = "輸入的是非數字字符。";
return;
}

// 如果第一步檢驗合格,就把輸入的數字轉化為日期格式
// 如果不符合日期格式即引發錯誤

try
{
DateTime dt = new DateTime(year, month, date);
}
catch
{
labCheckInfo.Text = "輸入的數字不符合日期格式";
return;
}

labCheckInfo.Text = "輸入正確";
}


  第三天

  學習目的:

  掌握下拉列表框的用法,并理解AutoPostBack屬性;

  理解IsPoskBack及用法;

  初識DataTable的增加列、行,與下拉列表框綁定的方法。

  今天的內容稍多些,而且涉及一些比較常用的,如IsPostBack及DataTable的基本用法。

  知識點:
  IsPostBack:在頁面onLoad之間是false值,而當從服務器回傳后,該值變為true。當頁面中的Button或ImageButton等觸發事件,都會把表單回傳到服務器,而返回時又會引發onLoad事件。為了節省服務器資源,有些加載中需進行一次,而不需要在回傳后多次發生,可以用!IsPoskBack來作為條件,那么頁面第一次加載后,以后就不會發生。該屬性可以幫助你提高程序的性能。
DataTable:即數據表,.Net 程序中最常用的類,特別是數據庫開發中,沒有該類的程序是不可想象的。

  先做個小程序來練練手,很簡單,就一個下拉菜單,取名dlstWeb。在屬性的Itmes選項中打開以下對話框,添加各項:

  

  ASPX中的代碼為:
  


<asp:DropDownList id="dlstWeb" style="Z-INDEX: 101; LEFT: 32px;
POSITION: absolute; TOP: 32px" runat="server"
Width="88px" AutoPostBack="True">
<asp:ListItem value="http://www.sina.com.cn">新浪 </asp:ListItem>
<asp:ListItem value="http://www.sohu.com">搜狐</asp:ListItem>
<asp:ListItem value="http://www.163.com">網易</asp:ListItem>
</asp:DropDownList>

  在下拉框的SelectedIndexChanged事件中的加入代碼:

  


private void dlstWeb_SelectedIndexChanged(object sender, System.EventArgs e)
{
Response.Write("<script language=javascript>window.open
('" +dlstWeb.Selectedvalue + "');</script>");
}

  按F5運行,可是我們發現這下拉框選擇時什么事也沒發生。原來原因是出在下拉框的AutoPostBack屬性上,把它設為true后再試試,一切OK了。
  下面我們增加些難度,下拉框中的內容很多情況下不是事先固定的,而是要動態添加。這里設計是用一數據表DataTable與之聯系起來。

  另建一文件,按上添加一下拉框,取名dlstWeb,先設AutoPostPack為false,否則在剛啟動而面就觸發SelectedIndexChanged事件,彈出窗口就亂飛了。
  在onLoad事件中添加代碼,注意DataTable用法及IsPoskBack 
  DataTable屬于System.Data命名空間,所以如果頁面沒預添加,可以自行增加這一行。

  


private void Page_Load(object sender, System.EventArgs e)
{
// 用IsPostBack判斷,只在沒有回傳時才初始化
// 這樣可以防止每次刷新或回傳時,都執行一次以下代碼
// 可以節省服務器的資源了。

if (!IsPostBack)
{
DataTable dt = new DataTable();
DataRow dr;

// 在表中增加字段
dt.Columns.Add("WebName",typeof(string));
dt.Columns.Add("WebUrl", typeof(string));

// 表中增加行
dr = dt.NewRow();
dr["WebName"] = "新浪";
dr["WebUrl"] = "http://www.sina.com.cn";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr["WebName"] = "網易";
dr["WebUrl"] = "http://www.163.com";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr["WebName"] = "搜狐";
dr["WebUrl"] = "http://www.sohu.com";
dt.Rows.Add(dr);

// 把表與下拉菜單綁定數據
dlstWeb.DataSource = dt;
dlstWeb.DataTextField = "WebName";
dlstWeb.DatavalueField = "WebUrl";
dlstWeb.DataBind();

// 開始時就把下拉菜單的AutoPostBack設為false,
// 防止一開始就亂跳出網頁來
dlstWeb.AutoPostBack = true;
}
}

  下面的事件與前面一模一樣了

  

   
private void dlstWeb_SelectedIndexChanged( object sender, System.EventArgs e)
{
Response.Write("<script language=javascript>window.open
('" +dlstWeb.Selectedvalue + "');</script>");
}

  VB.NET增加字段代碼稍有不同,如下:

  


// 在表中增加字段
dt.Columns.Add("WebName", GetType(String))
dt.Columns.Add("WebUrl", GetType(String) )

  其它都差不多了。

  小結:今天的一些知識非常重要,為了理解,程序的難度并不高。但這是以后程序設計的基礎,所以這些你一定要掌握。

總結

以上是生活随笔為你收集整理的从零开始学ASP.NET(基础篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。