ASP.NET在IIS上什麼地方?
原文:http://blogs.msdn.com/vijaysk/archive/2008/03/20/running-asp-net-3-5-on-iis.aspx
許多人在伺服器安裝完.NET 3.5後,就期待在IIS管理器的ASP.NET版本欄中會出現3.5的入口。但結果並未看到那個入口而造成驚慌。如果你有這種情況請接著往下看。另一些水平較高的就試著在3.5版的framework目錄下運行aspnet_regiis -i.. 但是仍沒有找到。
這就給我們帶來下面的問題
ASP.NET 3.5究竟是什嗎?
查看一下3.5版本的framework目錄你並不會找到許多ASP.NET運行所必需的檔案像aspnet_isapi.dll / aspnet_filter.dll / aspnet_regiis.exe / aspnet_regsql.exe...
原因在於.NET 3.5不是一個類似v2.0或v1.1那樣的獨立framework.它只是2.0 framework的擴充。這個擴充提供給開發人員一些新的語言特徵如匿名型別,擴充方法,lambda運算式,當然還有LINQ...AJAX也整合了進來.. 你還可以使用一些新的ASP.NET控制項如<asp:ListView>, <asp:LinqDataSource>, <asp:DataPager>
在IIS 6.0中ASP.NET欄中能ASP.NET 3.5嗎?
不行。因為.2.0版本檔案夾中的aspnet_isapi.dll仍用來處理請求,3.5版本並沒有新的ISAPI dll。那麼你不用更改IIS中的任何腳
本映射...只需將web應用程式指向ASP.NET欄中的2.0版本。這給我們帶來下一個問題:
究竟擴充了那些內容?
如果你使用Visual Studio 2008建立了一個website並選擇使用.NET 3.5 framework。開啟該website的屬性頁面選擇“引用”。你會看到以下條目:
這四個程式集引用提供了v3.5的新特徵。其中包含了功能性改進。
System.Core - Provides namespaces like System.Linq, System.IO
System.Data.DataSetExtensions - LINQ to DataSet
System.Web.Extensions - AJAX
System.Xml.Linq - New XML API.. supports LINQ to XML
我還需要手工配置嗎?
不需要。你在伺服器端安裝完.NET 3.5分發包後就會在GAC安裝這些程式集。任何引用這些程式集的網站會從GAC中擷取程式集。你不
需要再手工配置任何東西。你所需要做的就是發布內容到ASP.NET v2.0的web應用程式。
那麼你會認為
新語言特性需要新的編譯器。新編譯器究竟是怎麼使用的呢?
答案在你的檔案中。當你在Visual Studio 2008 建立一個ASP.NET 3.5網站時,在web.config中建立了類似以下的入口
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
新特性確實需要使用新的編譯器,而由web.config來通知.NET應使用v3.5編譯器。
在IIS 7.0應如何操作呢?
IIS 7.0是一樣的。