【问题标题】:Running many versions of .net on a machine在一台机器上运行多个版本的 .net
【发布时间】:2009-01-02 16:20:35
【问题描述】:

我对 .net 的各种版本很好奇。我们有一个开发各种版本(1.1 和 2.0)的应用程序的环境。现在,我正在尝试在 3.5 中进行开发。最大的问题是这些版本在同一个 IIS 安装上是否能很好地协同工作。另一个需要注意的是,我正在使用 Visual Studio 2005 和 IIS 5.0 在 Windows XP 上进行开发。这些应用程序将在 Windows Server 2003 上运行并使用 IIS 6.0。从我所见,看起来每个 IIS 虚拟目录都可以设置自己特定的 .net 版本。这还不够,使用不同 .Net 版本的不同应用程序不会相互影响吗?

我会接受我能得到的任何答案,但如果您可以直接从 Microsoft 的一些文档中参考您的答案,那将非常有帮助(我的公司非常重视“直接从小时口中听到”可以这么说)。也就是说,我真的会在这里接受任何答案。也欢迎来自沟渠的故事。

谢谢!

【问题讨论】:

    标签: .net asp.net iis


    【解决方案1】:

    托管 v.1.1 和 v.2.0 及更高版本的应用程序会遇到的最大问题是您需要两个应用程序池。

    一个用于 v.1.1 网站,另一个用于 v.2.0 及更高版本的网站。

    据您所知,.Net 3.0 和 3.5 都是 .Net 2.0 的超集,基本上是运行时的附加组件。尽管主机仍然需要安装它们。对于所有 .Net 2.0 及更高版本的网络应用,只需在主机服务器上安装最新的 .Net 3.5 SP1 运行时即可。

    在 IIS 6.0 及更高版本中,您可以访问应用程序池,而 IIS 5.0 不会公开这一点。

    我建议将您的开发环境切换到 Win 2k3 或 Vista (IIS 7.0)。

    【讨论】:

    • 更正:3.0 和 3.5 是 .NET 2.0 的超集。 :) 挑剔的结束(但这是一个重要的)。
    【解决方案2】:

    除了汤姆安德森的回答,您提到您的开发环境是 XP (IIS 5.0) 上的 Visual Studio 2005。请务必注意,无法从 Visual Studio 2005 开发 .NET 3.5。您需要升级到 Visual Studio 2008。

    【讨论】:

      【解决方案3】:

      在 Windows 2003 上,您不能在同一个应用程序池内的不同版本框架上运行应用程序。您必须为每个应用程序或至少每个框架版本创建单独的应用程序池。

      顺便说一句:创建单独的应用程序池是一件好事,并为您提供了一些其他优势,例如应用程序相互隔离,您可以设置每个应用程序的性能设置(内存、回收等)等。

      【讨论】:

        【解决方案4】:

        您应该考虑在单独的 virtual machines 上运行不同的版本。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-03-09
          • 2018-01-18
          • 2022-12-04
          • 2012-03-30
          • 1970-01-01
          • 2010-11-26
          • 1970-01-01
          相关资源
          最近更新 更多