2010-05-07 45 views
1

没有抓到这是我职业生涯中的第一次,我的工作已经被设置为Visual Studio 2008的一个ASP.Net(V3.5)项目/ 10 网站项目ASP.Net网站项目 - 错误在编译时

我并不热衷于这种工作方式,出于各种原因,但目前为止,直到公司在具有命名空间,设计器和项目文件等环境中工作的美德时,我有继续使用现有的代码库。

自从我开始以来,我遇到了一些奇怪的问题,但也许最奇怪的是,虽然VS让我构建代码,但它不会可靠地捡到编译错误,所以直到运行时才会注意到这些错误。

我知道网站模型允许动态/热编译当一个请求是由一个具体的,但我不明白为什么它不会做到这一点时,我手动(F5)构建/重建项目。

它是非常令人讨厌的,你可以想象,我无法找到解决方法。任何StackOverflow的人可以帮助使用suome建议让事情变得更好吗?

+0

你能发表一个编译时错误的例子,它没有被编译器捕获,但在运行时被报告吗? – Lazarus 2010-05-07 15:39:59

+0

我会使用没有编译时检查尝试利用转换项目的烦恼(阅读浪费时间)... – Nate 2010-05-07 15:53:23

回答

1

Web部署项目有一个选项来编译一切,包括ascx,aspx和其他东西。它几次将我从错误标记中解救出来。

http://msdn.microsoft.com/en-us/magazine/cc163448.aspx取消“做出更新”强制所有内容的编译。在大型应用程序中,这可能需要很长时间。当所有代码背后的代码都没有了,并且ascx文件在打开它们时会说“这是一个存根”,那么你知道你有一个完整的编译。

即使经过这么多的编译,ASP.NET配置文件,一些XML序列化等边缘的情况下仍然会在运行时编译一些。

2

如果您在ASPX或ASCX文件中有一个寄存器命令,你还没有注册的组件在你的项目,这会不会有所回升,直到运行时。这可能是问题吗?

<%@ Register TagPrefix="Custom" Namespace="CustomControlNamespace" Assembly= "CustomControl" %> 

如果包括网络部署项目的解决方案,并设置了预编译您的网站,它会捡起这些类型的错误,因为它会编译后面的代码沿标记的网页,而目前,你只编译你的代码和设计器文件。

0

最可能的原因是您的标记页面存在编译错误。只有在第一次运行时才会编译这些内容。

+0

唉这不是简单 - 所有的错误都在代码背后的文件:-( – 5arx 2010-05-11 13:30:11