2011-04-21 46 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> 
相关问题