2011-04-21 66 views
2

我有一個網站,它具有在IIS 7上運行.NET 4的應用程序池,並且它在Web.config中的system.ServiceModel中具有以下設置:我是否可以在.NET 4網站下運行.NET 2應用程序,並使用多個SiteBindingsEnabled

serviceHostingEnvironment multipleSiteBindingsEnabled="true" 

我遇到的問題是我希望能夠使用.NET 2應用程序池在此下運行應用程序。當我嘗試這個應用程序抱怨它有一個未知屬性multipleSiteBindingsEnabled。我看不到在.NET 2應用程序的Web.config中隱藏.NET 4屬性的方法。有沒有辦法做到這一點?

回答

2

問題是.net的不同版本使用不同的aspnet_isapi.dll來做那裏的工作,因此是彼此無法比擬的。

我可以想到哪些工作可能會將.Net 2應用程序放在它自己的IIS虛擬目錄中,並將其設置爲正確的.Net版本和不同的應用程序池。嘗試將虛擬目錄放置在主站點的文件系統的其他位置。

即使這可能無法正常工作。在這一點上,您需要將.Net 2應用程序放置在主站點的其自己的子域中。

+1

它被設置爲一個虛擬目錄,並使用不同的應用程序池(你不能有一個應用程序池運行不同的框架) 。將應用程序放在文件系統的其他位置不會停止Web.config繼承。使用子域將其映射爲另一個網站不是一種選擇 - 我需要將它保留在當前位置,因爲它是由其他網站引用的。 – 2011-04-21 10:49:35

+0

啊我認爲可能是這樣,但沒有時間去測試它,這意味着唯一的方法將是一個單獨的子域。 – TheAlbear 2011-05-05 16:18:52

0

裏面你的.NET應用4,你應該嘗試使用:

<location path="Net2VirtualFolderName"> 
     <system.web> 
    <compilation debug="false" /> 
    <!-- custom config --> 
     </system.web> 
    </location> 
相關問題