這篇文章給大家分享的是有關ASP.NET的IIS5與IIS6.0有什么區別的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
自從有了html與http,就有了瀏覽器與Web服務器,并有了Web應用,最初的交互模式是這樣的:

該模式很好地運行了很多年。然而,隨著計算機應用的發展,人們越來越不滿足于只有靜態內容的頁面,而由某種機制動態產生html等代碼的需求越來越迫切,于是,很多技術就應運而生,ASP.NET就是這樣一種技術。從本質上講,ASP.NET就是一種服務器端動態產生html、css、javascript等瀏覽器認識的代碼的技術。ASP.NET的交互模式如下:

由該圖可知,ASP.NET必須解決兩大問題,一是如何與Web服務器(一般就是指IIS)進行交互,二是如何根據不同請求產生不同的html等代碼。
***個問題,根據IIS版本(5,6.0,7.0)的不同,ASP.NET具有不同的進程模式與不同的交互模式,該問題不是本篇要講述的。一般來說,大家不必關心該問題,而且要了解該問題,又必須清楚IIS各個版本的模型,而各個版本又各有各的不同,因此,我基本不準備講述這個問題,大家有興趣的話,可以自行搜索相關資料。
我們來討論第二個問題,這里首先要說明的是,因為IIS7.0進程模式的變化比較大,我也沒去了解IIS7.0的模型,因此,以下講述及以后講述將只針對IIS5與IIS6.0.我們有理由認為,針對IIS5與IIS6.0的講述一般同樣適用于IIS7.0.
先且按下該問題不表,我們來看一段請求玉帝把大象放到冰箱里的代碼(為什么不是上帝?因為我中華不歸上帝管),請大家先跟著我的思路來,別急,別急。
usingSystem;
namespaceConsoleApplication3
{
classProgram
{
staticvoidMain(string[]args)
{
Emperoremperor=newEmperor();
while(true)
{
Console.WriteLine("首先給玉帝準備好大象和冰箱。");
Console.WriteLine("輸入大象的名字:");
stringelephantName=Console.ReadLine();
Console.WriteLine("輸入大象的體重:");
intintelephantWeight=int.Parse(Console.ReadLine());
Console.WriteLine("輸入冰箱的名字:");
stringrefrigeratorName=Console.ReadLine();
Elephantelephant=newElephant()
{
Name=elephantName,
Weight=elephantWeight
};
Refrigeratorrefrigerator=newRefrigerator()
{
Name=refrigeratorName
};
Contextcontext=newContext()
{
Elephant=elephant,
Refrigerator=refrigerator
};
emperor.ProcessRequest(context);
Console.WriteLine("是否要玉帝繼續把大象關進冰箱里?");
stringanswer=Console.ReadLine();
if(answer=="n")
break;
}
}
}
classEmperor
{
publicvoidProcessRequest(Contextcontext)
{
Elephantelephant=context.Elephant;
Refrigeratorrefrigerator=context.Refrigerator;
//***步,打開冰箱門
refrigerator.IsOpen=true;
Console.WriteLine(string.Format("玉帝打開了{0}的冰箱門。",
refrigerator.Name));
//第二步,把大象放進去
refrigerator.Content=elephant;
Console.WriteLine(string.Format("玉帝把大象{0}放到冰箱{1}里了。",
elephant.Name,refrigerator.Name));
//第三步,關上冰箱門
refrigerator.IsOpen=false;
Console.WriteLine(string.Format("玉帝關上了{0}的冰箱門。",
refrigerator.Name));}
}
classElephant
{
publicstringName{get;set;}
publicintWeight{get;set;}
}
classRefrigerator
{
publicstringName{get;set;}
publicboolIsOpen{get;set;}
privateobjectm_Content;
publicobjectContent
{
get{returnthis.m_Content;}
set
{
if(!this.IsOpen)
thrownewInvalidOperationException("冰箱門未打開,無法放進東西。");
if(this.m_Content!=null)
thrownewInvalidOperationException("冰箱內有東西,無法放進新的東西。");
this.m_Content=value;
}
}
}
classContext
{
publicElephantElephant{get;set;}
publicRefrigeratorRefrigerator{get;set;}
}
}
感謝各位的閱讀!關于“ASP.NET的IIS5與IIS6.0有什么區別”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。