明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

親密接觸ASP.Net(2)

[摘要]上一節(jié) ,我們簡(jiǎn)單介紹了ASP+的配制環(huán)境,我們這一節(jié)來(lái)談?wù)凙SP+的語(yǔ)法.其實(shí)當(dāng)你裝好NGWS后,他所帶的文檔是最好的學(xué)習(xí)ASP+的教程,要你E文足夠好,以及很好的耐性,學(xué)習(xí)ASP+不是難事啦.我們這些家伙也是從這里學(xué)了很多的,這篇關(guān)于ASP+語(yǔ)法的文章,大多數(shù)也來(lái)自于M的原文,最可惜的就是我們...
上一節(jié) ,我們簡(jiǎn)單介紹了ASP+的配制環(huán)境,我們這一節(jié)來(lái)談?wù)凙SP+的語(yǔ)法.其實(shí)當(dāng)你裝好NGWS后,他所帶的文檔是最好的學(xué)習(xí)ASP+的教程,要你E文足夠好,以及很好的耐性,學(xué)習(xí)ASP+不是難事啦.我們這些家伙也是從這里學(xué)了很多的,這篇關(guān)于ASP+語(yǔ)法的文章,大多數(shù)也來(lái)自于M$的原文,最可惜的就是我們的服務(wù)器不能裝上NGWS,有些例子,大家不能看到執(zhí)行結(jié)果,不太好。不過(guò)有些地方,我會(huì)把執(zhí)行結(jié)果顯示出來(lái)的。我們開(kāi)始這一節(jié)吧:)

    一個(gè)ASP+頁(yè)面的后綴名是".ASPX".它能夠包含八種不同的語(yǔ)法標(biāo)置元素.我們將在這篇文章中介紹這幾種不同的語(yǔ)法,并且舉出一個(gè)例子來(lái)顯示它的用法。  

< % %> 與 < %= %>

用過(guò)asp嗎,用過(guò),那么大家就不會(huì)對(duì)這個(gè)標(biāo)簽?zāi)吧。呵呵,下面是一個(gè)簡(jiǎn)單的例子。他執(zhí)行后的結(jié)果我想我不寫(xiě)不出來(lái),大家也都知道啦。這個(gè)就不多談了,呵呵.

< % for (int i=0; i<8; i++)
   {
%>
      Hello World!  
< % } %>

上面的例子中< % %>之間的程序?qū)?huì)被執(zhí)行,并顯示出的結(jié)果,< %="Hello World" %>就等于< % Response.Write ("Hello World") %>

注意:在C#中,是以分號(hào)(;)做為分隔符,但是我們要注意一些事情。

 

C# code
< % Response.Write("Hello World"); %>  這里的分號(hào)是必須的
< %="Hello World"; %>  這樣寫(xiě)會(huì)有一些小問(wèn)題就是,顯示的結(jié)果是 "Response.Write("Hello World";);"
正確



聲明代碼的語(yǔ)法: < % ... number = subtract(number, 1); ... %>

  重要問(wèn)題:ASP+不像ASP,在ASP中所能的函數(shù)得在區(qū)域中聲明,但是在ASP+中所有函數(shù)和變量都必須在區(qū)域中聲明。否則,aspx編譯時(shí)會(huì)出現(xiàn)錯(cuò)誤.

ASP+ 服務(wù)器端控件語(yǔ)法

服務(wù)器上的控件使用開(kāi)發(fā)者能夠動(dòng)態(tài)產(chǎn)生HTML頁(yè)面,并發(fā)送給客戶(如Netscape和IE所產(chǎn)生的JavaScript是不同的。還有普通瀏覽器和WAP瀏覽所收到的頁(yè)面也是不同的).他們對(duì)象的聲明也是運(yùn)用了標(biāo)簽。但是他們和其它的標(biāo)簽是不同的。因?yàn)樗麄儼幸粋(gè)"runat=server"屬性。(呵呵,這個(gè)屬性我們?cè)贏SP中也用過(guò),不過(guò)功能就...)。下面的例子演示了控件的使用方法。

< html>

< script language="C#" runat=server>

void Page_Load(Object sender, EventArgs e) {
Message.Text = "Welcome to ASP+";
}

< /script>

< body>

< asp:label id="Message" font-size=24 runat=server/>

< /body>

< /html>


上面的源代碼中我們加入ID為 "Message":


< asp:label id="Message" font-size=24 runat="server"/>


看了上面的代碼,是不是發(fā)現(xiàn)我們?cè)趯?xiě)VB程序,呵呵,先搭好骨架,然后再一個(gè)個(gè)的去編寫(xiě)他們事件處理。這就是M$給我們的新概念.


ASP+ Html 服務(wù)器控件語(yǔ)法

HTML服務(wù)器控件,使開(kāi)發(fā)者程序化的操作HTML元素。一個(gè)HTML服務(wù)器控件只是比普通HTML元素多了一個(gè)"runat=server"屬性。下面的例子具體演示了HTML服務(wù)控件的用法。


< script language="C#" runat=server>
  void Page_Load(Object sender, EventArgs e) {
    Message.InnerHtml = "Welcome to ASP+";
  }
< /script>
...    
< span id="Message" style="font-size:24" runat=server/>

他執(zhí)行的結(jié)果和第一個(gè)程序的結(jié)果是一樣的


數(shù)據(jù)捆綁(Databinding)語(yǔ)法 < %# %>

數(shù)據(jù)捆綁技術(shù)使得ASP+開(kāi)發(fā)者能夠很形像地把控件的屬性與數(shù)據(jù)容器的值聯(lián)系起來(lái).在 < %#%>這個(gè)區(qū)域內(nèi)的代碼只有在"DataBind"方法調(diào)用后才會(huì)被執(zhí)行。下面的例子就演示了它的用法。


  
    Here is a value:
  


通過(guò)這種方法使得名為"MyList"的控件程序化,這時(shí)就該調(diào)用DataBind()方法了。
void Page_Load(Object sender, EventArgs e)
{     ArrayList items = new ArrayList();
       items.Add("One");
       items.Add("Two");
       items.Add("Three");
        MyList.DataSource = items;
        MyList.DataBind();
}
Object標(biāo)簽語(yǔ)法: < object runat="server" />

Object標(biāo)簽語(yǔ)法使得開(kāi)發(fā)者能夠使用就基本的標(biāo)簽就能聲明和示例一個(gè)對(duì)象。如下:

< object id="items" class="System.Collections.ArrayList" runat="server"/>

這個(gè)對(duì)象會(huì)在運(yùn)行時(shí)自動(dòng)建立,而且名字為items
void Page_Load(Object sender, EventArgs e) {
  items.Add("One");
  items.Add("Two");
  items.Add("Three");
  ...
}


注釋語(yǔ)法:

注釋能使開(kāi)發(fā)者阻止代碼(包括控件)的執(zhí)行或引用。下面的例子演示了這個(gè)語(yǔ)法的應(yīng)用.

< %--

  < asp:calendar id="MyCal" runat=server/>
    < % for (int i=0; i<45; i++) { %>
             Hello World
    < % } %>
--%>

SSI 語(yǔ)法: <-- #Include File="Locaton.inc" -->

寫(xiě)過(guò)最基本的HTML的兄弟對(duì)他不會(huì)陌生,所以也不想多講啦:)

< !-- #Include File="Header.inc" -->
...
< !-- #Include File="Footer.inc" -->

    下面的一節(jié),我們將來(lái)具體看看HTML控件和用戶控件



標(biāo)簽:親密接觸ASP.Net(2)