Asp.net mvc IIS 6中的MVC3.Net预编译问题

Asp.net mvc IIS 6中的MVC3.Net预编译问题,asp.net-mvc,aspnet-compiler,Asp.net Mvc,Aspnet Compiler,我有一个MVC3 C#.Net web应用程序,我正在我的应用程序上运行aspnet#U编译器,以便进行预编译。我正在运行以下命令: aspnet_compiler -v /dev/boe Boe是“默认网站”下开发结构中的应用程序。上述命令产生此错误 c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\dev_boe\25d5f53a\2ad742fc\App_Web_vujir5mm.0.cs(29):

我有一个MVC3 C#.Net web应用程序,我正在我的应用程序上运行aspnet#U编译器,以便进行预编译。我正在运行以下命令:

aspnet_compiler -v /dev/boe
Boe是“默认网站”下开发结构中的应用程序。上述命令产生此错误

c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\dev_boe\25d5f53a\2ad742fc\App_Web_vujir5mm.0.cs(29): error CS0234: The type or namespace name 'Models' does not exist in the namespace 'BOE' (are you missing an assembly reference?)
c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\dev_boe\25d5f53a\2ad742fc\App_Web_vujir5mm.2.cs(29): error CS0234: The type or namespace name 'Models' does not exist in the namespace 'BOE' (are you missing an assembly reference?)
c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\dev_boe\25d5f53a\2ad742fc\App_Web_vujir5mm.3.cs(29): error CS0234: The type or namespace name 'Models' does not exist in the namespace 'BOE' (are you missing an assembly reference?)

但是,模型不在我们的解决方案中。我们的模型对象位于web应用程序引用的域项目中。编译器似乎希望在我们的MVC应用程序中有一个模型引用。这是真的吗?或者是其他原因导致了此错误?

在IIS 7.5上尝试使用Razor引擎时,我遇到了类似的错误(即使安装了.NET 4!)


如果项目中有您建议的引用,您可能需要进入引用,高亮显示它,转到属性,然后在“复制本地”下,将其设置为true。重新发布,希望这会像我一样解决您的问题。

感谢David Hirst的建议,查看临时文件中的代码行,我发现了问题:

基本上,有些文件没有包含在VisualStudio解决方案中,但仍在我的计算机上的文件结构中。有3个.cshtml文件引用模型。由于这些文件没有包含在解决方案中,它们也没有包含在使用VS的构建中。而且,由于它们不在解决方案中,当我搜索模型时,我没有得到任何结果……但是编译器扫描了整个目录结构,因此试图编译具有错误引用的文件


关于确保删除遗留代码,并确保代码库和文件结构在snyc中的出色经验。

您是否在提到的文件中看到对
BOE.Models
的任何引用?我没有。这就是让我抓狂的原因,这就是问题所在,我的解决方案中没有任何对模型的引用…奇怪的是,我看到你提到了这一点,但你也提到了你引用了一个域项目,你有没有尝试将此副本制作成本地的?啊…我明白你的意思。但是,是的,它是复制本地的。在错误报告的文件的第29行显示了什么?这是你另一个项目的参考资料吗?…好主意!我没有仔细看,它显示了正在编译的代码引用了.cshtml文件中的模型。我将发布一个答案。基本上,VS解决方案中没有包含tht文件,但在我的机器上仍然存在引用模型的文件结构中。因此,当我搜索模型时,没有得到任何结果……但编译器会扫描整个目录结构