为什么.net 1.1代码在2.0中编译并抛出错误?

时间:2010-03-15 18:36:19

标签: asp.net

您好我在VS2003 / 1.1框架中构建了Web项目并部署在一个Web服务器中,其中IIS设置指定为1.1 framework.lets表示项目X

我还有另一个使用VS2008 / 2.0构建的Web项目。 IIS设置 - 选择ASP版本2.0,并指定所有页面以2.0 * dll运行。让我们说项目Y

现在问题似乎是当我点击项目x时,有时会抛出错误,如:

error BC30456: 'Initialize Culture' is not a member of ASP

在解决此问题时,我浏览了2.0临时ASP.Net文件"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\"并找到了为项目X生成的临时文件。(HUH?)

如何/为什么1.1项目只有在出错时才会在2.0中编译。(或者我们可以这样说它每次在2.0中编译时都会出错,而这是不应该的)

当项目X与.net 2.0无关时,我很困惑为什么会这样。

添加此信息:

IIS 6.0版

我忘了提到项目X在95%的情况下工作,而1.1下没有任何错误。此错误随机抛出,我们无法重新创建。项目错误输出的时间与使用2.0

进行编译的时间相同

2 个答案:

答案 0 :(得分:2)

这两个项目是否在IIS服务器上共享同一个AppPool?您需要为同一IIS服务器上运行的1.1和2.0进程分别创建应用程序池。

答案 1 :(得分:0)

安装.NET版本时,如果安装了IIS并运行ASP.NET,则运行aspnet_regiis工具。这会将IIS设置为使用您正在安装的.NET版本。

大约七年前,我发生了同样的事情。我在生产服务器上安装了.NET 2.0 Windows窗体应用程序,并立即看到了错误。

解决方案是运行aspnet_regiis的.NET 1.1版本。