Visual Studio 10是否需要编译不属于该解决方案的C#文件?

时间:2013-06-24 09:55:32

标签: c# visual-studio-2010

获得了适用于ASP.NET网站的Visual Studio 10解决方案,VS似乎编译了网站文件夹中的*.aspx.cs文件,这些文件曾经是解决方案的一部分但被排除在外(我不再在解决方案资源管理器中查看这些文件)。这是预期的吗?如果没有,我该如何解决?重建解决方案没有帮助。

另外,是否预计我找不到* .aspx.cs文件的二进制文件?

2 个答案:

答案 0 :(得分:1)

简短回答:不会。它只会编译标记为'compile'的.csproj中包含的内容(在文件属性窗口中)。

尝试刷新项目,将.csproj作为文件文本打开,并检查那些文件是否被引用。

最后,它可能是一个引用这些文件的依赖项目。

如果找不到解决方案,请粘贴VS

给出的确切错误

为了澄清,解决方案文件(.sln)包含项目文件(.csproj); .csproj文件包含对要构建的文件的引用。

答案 1 :(得分:1)

如果您的网站是网站项目而不是 Web应用程序项目(请参阅Web Application Projects versus Web Site Projects in Visual Studio),那么IIS将在运行时为您执行编译而不是Visual Studio - 在这种情况下,.csproj文件不用于确定什么是和不编译。

  

没有项目文件(.csproj或.vbproj)。文件夹结构中的所有文件都自动包含在站点中。

我不确定已编译的二进制文件的位置,但我相信它是某个临时文件夹,因此您不一定希望在网站文件夹结构中看到这些二进制文件。

如果您想要明确控制编译的内容以及编译时间,那么最好将项目转换为Web应用程序项目。