最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Asp.net內(nèi)置對象之Server對象(概述及應(yīng)用)

 更新時間:2013年02月02日 13:25:43   作者:  
Server對象提供對服務(wù)器上的方法和屬性的訪問以及進(jìn)行HTML編碼的功能,本文主要圍繞server對象介紹詳細(xì)功能及常用屬性和主要方法,感興趣的朋友可以了解下,或許對你學(xué)習(xí)server對象有所幫助

一、了解Server對象

Server對象提供對服務(wù)器上的方法和屬性的訪問以及進(jìn)行HTML編碼的功能。這些功能分別由Server對象相應(yīng)的方法和屬性完成。

二、Server對象的常用屬性

(1).MachineName
(2).ScriptTimeout:屬性用于設(shè)置腳本程序執(zhí)行的時間,適當(dāng)?shù)卦O(shè)置腳本程序的ScriptTimeout可以提高整個Web應(yīng)用程序的效率。語法如下:
Server.ScriptTimeout=time;(以s(秒)為單位)

ScriptTimeout屬性的最短時間默認(rèn)為90 s。對于一些邏輯簡單、活動內(nèi)容較少的腳本程序該值已經(jīng)足夠。但在執(zhí)行一些活動內(nèi)容較多的腳本程序時,就顯得小了些。比如訪問數(shù)據(jù)庫的腳本程序,必須設(shè)置較大的ScriptTimeout屬性值,否則腳本程序就不能正常執(zhí)行完畢。

復(fù)制代碼 代碼如下:

Response.Write("服務(wù)器機(jī)器名:" + Server.MachineName);//服務(wù)器機(jī)器名:IBM 
Response.Write("超時時間為:" + Server.ScriptTimeout);//超時時間為:30000000

三、Server對象的主要方法

最惡心的就是網(wǎng)速差,機(jī)器卡

四、Server對象的常見應(yīng)用

(1).執(zhí)行其他ASP.NET網(wǎng)頁

使用Server對象的Execute方法可以在當(dāng)前頁面中執(zhí)行同一Web服務(wù)器上的另一頁面,當(dāng)該頁面執(zhí)行完畢后,控制流程將重新返回到原頁面中發(fā)出Server.Execute方法調(diào)用的位置。被調(diào)用的頁面應(yīng)是一個.aspx網(wǎng)頁,因此,通過Server.Execute方法調(diào)用可以將一個.aspx頁面的輸出結(jié)果插入到另一個.aspx頁面中。Server.Execute方法語法如下:
Server.Execute (path)

在WebForm1頁面中:

復(fù)制代碼 代碼如下:
 
protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write("<P>調(diào)用 Execute 方法之前</P>");
Server.Execute("Page2.aspx");//使用Server.Execute(Path)執(zhí)行其他ASP.NET頁面。這里將Page2.aspx的輸出結(jié)果插入到當(dāng)前頁面
//Server.Execute("http://www.163.com");//程序不能執(zhí)行,必須是相對路徑
Response.Write("<P>調(diào)用 Execute 方法之后</P>");
}

在page.aspx頁面中
復(fù)制代碼 代碼如下:
 
protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write("這是page2.aspx網(wǎng)頁");
}

則運(yùn)行結(jié)果為:

(2).將流程控制轉(zhuǎn)移到其他ASP.NET網(wǎng)頁

使用Server對象的Transfer方法可以終止當(dāng)前頁的執(zhí)行,并將執(zhí)行流程轉(zhuǎn)入同一Web服務(wù)器的另一個頁面。被調(diào)用的頁面應(yīng)是一個.aspx頁面,在頁面跳轉(zhuǎn)過程中,Request等對象保存的信息不變,這意味著從頁面A跳轉(zhuǎn)到頁面B后可以繼續(xù)使用頁面A中提交的數(shù)據(jù)。此外,由于Server.Transfer方法調(diào)用是在服務(wù)器端進(jìn)行的,客戶端瀏覽器并不知道服務(wù)器端已經(jīng)執(zhí)行了一次頁面跳轉(zhuǎn),所以實(shí)現(xiàn)頁面跳轉(zhuǎn)后瀏覽器地址欄仍將保存頁面A的URL信息,這樣還可以避免不必要的網(wǎng)絡(luò)通信,從而獲得更好的性能和瀏覽效果。Server.Transfer方法如下:
Server.Transfer(path)

提示:參數(shù)path指定在服務(wù)器上要執(zhí)行的新頁的URL路徑,在此URL后面也可以附加一些查詢字符串變量的名稱/值對
在WebForm1頁面中:

復(fù)制代碼 代碼如下:

protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write("<P>調(diào)用 Transfer 方法之前</P>");
//Response.Redirect("Page2.aspx");
Server.Transfer("Page2.aspx");
//使用Server.Transfer(path)終止當(dāng)前頁的執(zhí)行,所以執(zhí)行到這一行就終止了,也就是說后面的不再執(zhí)行;
//然后將執(zhí)行流程轉(zhuǎn)入同一Web服務(wù)器的另一個頁面。也就是page2.aspx頁面中了。在頁面跳轉(zhuǎn)過程中,Request等對象保存的信息不變
//這意味著從頁面A跳轉(zhuǎn)到頁面B后可以繼續(xù)使用頁面A中提交的數(shù)據(jù):那么在page2.apsx頁面中就能輸出Server.Transfer(path)之前的數(shù)據(jù)了。
//Server.Transfer("www.163.com");//這樣不行,只能是虛擬路徑
Response.Write("<P>調(diào)用 Transfer 方法之后</P>");
}

在Page2頁面:
復(fù)制代碼 代碼如下:

protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write("<P>這是 Page2.aspx 的執(zhí)行結(jié)果</P>");
}

則運(yùn)行結(jié)果:

如果我們換成了Response.Redirect("Page2.aspx");則只能實(shí)現(xiàn)頁面跳轉(zhuǎn)功能了。
引述:ASP.NET頁面?zhèn)髦档娜N方式

復(fù)制代碼 代碼如下:

(1).使用QueryString
(2).使用Session變量
(3).使用Server.Transfer

(3).將虛擬路徑轉(zhuǎn)換為物理文件路徑

在Web窗體頁中經(jīng)常需要訪問文件或文件夾,此時往往要求將虛擬路徑轉(zhuǎn)換為物理文件路徑。MapPath方法將指定的相對或虛擬路徑映射到服務(wù)器上相應(yīng)的物理目錄上。Web服務(wù)器中的多個Web應(yīng)用程序一般都按照各自不同的功能存放于不同的目錄中。

使用虛擬目錄后,客戶端仍然可以利用虛擬路徑存取網(wǎng)頁,這就是互聯(lián)網(wǎng)用戶在瀏覽器中常見的網(wǎng)頁的URL,但此時用戶無法知道該網(wǎng)頁的實(shí)際路徑(實(shí)際存放位置)。但如果確實(shí)需要知道某網(wǎng)頁文件的實(shí)際路徑,則可利用MapPath方法。MapPath方法的語法如下:

Server.MapPath(Path)

注意:其中參數(shù)Path表示指定要映射物理目錄的相對或虛擬路徑。執(zhí)行MapPath方法后,將返回與path相對應(yīng)的物理文件路徑。
解惑:相對路徑、絕對路徑、物理路徑、虛擬路徑

復(fù)制代碼 代碼如下:

(1).相對路徑:相對當(dāng)前目錄的路徑、或相對某個目錄的路徑,這里主要體現(xiàn)“相對”的概念
(2).絕對路徑:從網(wǎng)站的根路徑為最高層開始的路徑,如:C:\Website\web1\index.html
(3).物理路徑:實(shí)際磁盤中的路徑,可以是相對路徑、也可以是絕對路徑
(4).虛擬路徑:是服務(wù)器映射出來的路徑,如/myweb

(這里引用了CSDN博友:flytosea8的解釋:鏈接地址:http://bbs.csdn.net/topics/70115404)


虛擬路徑、物理路徑
用IIS舉個例子:
WEB服務(wù)目錄是d:\test
那么用HTTP訪問網(wǎng)站根目錄的時候,其實(shí)訪問的是d:\test,那么其中虛擬路徑就是\(根),物理路徑就是d:\test

一般虛擬路徑、物理路徑的提法在WEB、FTP服務(wù)中比較多見。

相對路徑和絕對路徑就比較廣泛了,哪兒都看得到
相對路徑:比如D:\TEST1\TEST2\TEST3
那么TEST2是TEST1的下級路徑,TEST2又是TEST3的上級路徑,所以上級路徑或者下級路徑都是相對而言的。一般上級路徑可以用..來表示,當(dāng)前路徑可以用.來表示。
絕對路徑:比如c:\根路徑都是絕對了,任何路徑相對于根路徑都有一個絕對的最近的路徑,也是絕對路徑。

如果你想想別人指路的話,就可以悟出什么是相對的,什么是絕對的
相對的指路方法:從“這兒”向前走,右拐就到了
絕對的指路方法:汽車站向東100米(如果汽車站是絕對的位置),絕對的指路方法不依賴于指路的人在什么地方


復(fù)制代碼 代碼如下:

protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write("Web站點(diǎn)的根目錄為:"+Server.MapPath("/")+"<br>");
Response.Write("當(dāng)前虛擬目錄的實(shí)際路徑為:"+Server.MapPath("./")+"<br>");//E:\asp.net\Server對象\code\
Response.Write("當(dāng)前網(wǎng)頁的實(shí)際路徑為:"+Server.MapPath(Request.FilePath)+"<br>");//E:\asp.net\Server對象\code\WebForm1.aspx
Response.Write("當(dāng)前網(wǎng)頁的實(shí)際路徑為:"+Server.MapPath("webform2.aspx")+"<br>");//E:\asp.net\Server對象\code\WebForm2.aspx

}

(4).字符串的編碼與解碼

在某些情況下,可能需要在網(wǎng)頁中顯示“段落標(biāo)記<p>”之類的內(nèi)容,而不希望瀏覽器將其中的<p>解釋為HTML語言中的段落標(biāo)記;在上述場合,應(yīng)當(dāng)調(diào)用Server對象的HtmlEncode方法對要在瀏覽器中顯示的字符串進(jìn)行編碼
有時候,在傳遞參數(shù)時,是將數(shù)據(jù)附在網(wǎng)址后面?zhèn)鬟f,但是如果遇到一些如“#”等特殊字符的時候,就會讀不到這些字符后面的參數(shù)。所以需要在傳遞特殊字符的時候,需先將要傳遞的內(nèi)容先以UrlEncode編碼,這樣才可以保證所傳遞的值可以被順利讀到。
另外有些服務(wù)器對中文不能很好的支持,這時候也需要利用UrlEncode對其進(jìn)行編碼,以被服務(wù)器所識別。

復(fù)制代碼 代碼如下:

HtmlEncode||HtmlDecode:
protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write(Server.HtmlEncode("粗體標(biāo)記為:<B>粗體文字</B>"));//HtmlEncode對字符串進(jìn)行HTML編碼并返回編碼后的字符串,所以這個原樣輸出
Response.Write("<br>");
Response.Write(Server.HtmlDecode("粗體標(biāo)記為:<B>粗體文字</B>"));//HtmlDecode對字符串進(jìn)行HTML解碼并返回解碼后的字符串,所以這個后面加粗
}

復(fù)制代碼 代碼如下:

UrlEncode||UrlDecode:
protected void Page_Load(object sender, System.EventArgs e)
{
Response.Write("<A href='1.aspx?data=" + Server.UrlDecode("name@#163.com") + "'>沒有編碼的參數(shù)內(nèi)容</A><br>");//在1.aspx頁面輸出:name@
Response.Write("<A href='1.aspx?data=name@#163.com'>沒有編碼的參數(shù)內(nèi)容</A><br>");//在1.aspx頁面輸出:name@
Response.Write("<A href='1.aspx?data=" + Server.UrlEncode("name@#163.com") + "'>編碼的參數(shù)內(nèi)容</A><br>");//在1.aspx頁面輸出:name@#163.com
Response.Write(Server.UrlDecode("name@#163.com"));//對字符串進(jìn)行URL解碼,這里輸出:name@#163.com
Response.Write("<br>");
Response.Write(Server.UrlEncode("name@#163.com"));//對字符串進(jìn)行URL編碼,這里輸出:name%40%23163.com
Response.Write("<br>");
Response.Write(Server.UrlDecode("中文"));//輸出:中文
Response.Write("<br>");
Response.Write( Server.UrlEncode("中文"));//輸出:%e4%b8%ad%e6%96%87
Response.Write("<br>");
Response.Write(Server.UrlEncode("english"));//輸出:english
Response.Write("<br>");
Response.Write(Server.UrlDecode("english"));//輸出:english
}

相關(guān)文章

  • .NET的Ajax請求數(shù)據(jù)提交實(shí)例

    .NET的Ajax請求數(shù)據(jù)提交實(shí)例

    這篇文章主要介紹了.NET的Ajax請求數(shù)據(jù)提交實(shí)例,較為詳細(xì)的分析了Ajax請求、數(shù)據(jù)的提交以及參數(shù)的傳遞技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • ASP.NET Core 5中如何生成PDF文檔

    ASP.NET Core 5中如何生成PDF文檔

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core 5中如何生成PDF文檔的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • ASP.NET 多附件上傳實(shí)現(xiàn)代碼

    ASP.NET 多附件上傳實(shí)現(xiàn)代碼

    在寫這篇文章之前我也在Google上找到了很多有關(guān)多附件上傳的文章,有用ASP.NET實(shí)現(xiàn)的,也有用JSP、PHP等其它技術(shù)實(shí)現(xiàn)的
    2009-06-06
  • ASP.NET中彈出消息框的幾種常見方法

    ASP.NET中彈出消息框的幾種常見方法

    這篇文章主要介紹了ASP.NET中彈出消息框的幾種常見方法,給出了幾種常見的彈出消息框的方法,并總結(jié)對比了幾種方法的特點(diǎn),具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-11-11
  • CZGL.ProcessMetrics處理監(jiān)控?cái)?shù)據(jù)的三種方式介紹

    CZGL.ProcessMetrics處理監(jiān)控?cái)?shù)據(jù)的三種方式介紹

    這篇文章介紹了CZGL.ProcessMetrics處理監(jiān)控?cái)?shù)據(jù)的三種方式,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • ASP.NET預(yù)備知識學(xué)習(xí)筆記

    ASP.NET預(yù)備知識學(xué)習(xí)筆記

    這篇文章主要介紹了ASP.NET預(yù)備知識,內(nèi)容很全面,幾乎涵蓋了asp.net預(yù)備知識點(diǎn),感興趣的小朋友可以看一看。
    2015-09-09
  • Visual Studio 2017如何用正則修改部分內(nèi)容詳解

    Visual Studio 2017如何用正則修改部分內(nèi)容詳解

    這篇文章主要給大家介紹了關(guān)于Visual Studio 2017如何用正則修改部分內(nèi)容的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-05-05
  • asp.net 讀取Excel數(shù)據(jù)到DataTable的代碼

    asp.net 讀取Excel數(shù)據(jù)到DataTable的代碼

    asp.net 讀取Excel數(shù)據(jù)到DataTable的代碼,需要的朋友可以參考下。
    2010-03-03
  • 在Asp.net下實(shí)現(xiàn)變長連接的web即時應(yīng)用的實(shí)現(xiàn)范例及ReverseAjax的演示介紹

    在Asp.net下實(shí)現(xiàn)變長連接的web即時應(yīng)用的實(shí)現(xiàn)范例及ReverseAjax的演示介紹

    根據(jù)公司近期的一個培訓(xùn)整理的資料,附件包括一個完整的使用變長連接的web即時聊天室的范例和針對ReverseAjax的ppt培訓(xùn)文稿,其中ppt中包含了對范例程序的完整講解
    2011-12-12
  • ASP.NET Core MVC 過濾器的使用方法介紹

    ASP.NET Core MVC 過濾器的使用方法介紹

    本篇文章主要介紹了ASP.NET Core MVC 過濾器的使用方法介紹,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09

最新評論

焦作市| 越西县| 邳州市| 西乡县| 芜湖县| 城市| 黄梅县| 凤凰县| 龙山县| 繁峙县| 长海县| 蒙自县| 寿宁县| 临高县| 拜泉县| 长子县| 巩义市| 外汇| 丹棱县| 镇宁| 闽侯县| 博罗县| 蒙阴县| 梧州市| 怀宁县| 虹口区| 南乐县| 鄂州市| 崇义县| 台江县| 永春县| 连云港市| 安多县| 新干县| 奎屯市| 嵩明县| 兴义市| 沈丘县| 遂平县| 精河县| 塔城市|