jdc0589
jdc0589

Reputation: 7018

ASP.net Web Forms, get aspx/view errors at compile time?

I know this can be done with mvc2, but is there any way for visual studio(2010)/resharper(6) to check for errors on aspx pages at compile time and halt the build? Resharper can detect the errors just fine, so it seems like there should be a way to integrate a check of all the aspx pages in to the build process.

Any tips?

Upvotes: 16

Views: 2926

Answers (2)

Tod Thomson
Tod Thomson

Reputation: 4939

You probably don't want to do this at compile time because compiling views is slow...

What you really want to do is have a NAnt (or something else) task that will XML poke this target into your web .csproj file prior to compiling the source code on your CI server.

This way your developers don't have to put up with the time wasting of the AspNetCompiler every time they do CTRL+SHIFT+B locally in Visual Studio, but you can still alert people to views with syntax errors on the CI server by failing the CI build.

Update: Here is a method that will run your view build outside of Visual Studio, but still on your local PC :)

http://www.luisrocha.net/2011/10/avoiding-mvcbuildviews-build-time.html

Upvotes: 1

Justin
Justin

Reputation: 86779

Yes you can. The following steps will cause .aspx files to be compiled as part of a normal builk invoked by the IDE, no Resharper plugin required.

  • Unload your web app (right click on the project and select ‘Unload Project’)
  • Open the .csproj file in a text editor (right click on the project and select ‘Edit myProjectName.csproj’)
  • At the bottom of the file find the comment which says ‘To modify your build process…’ and insert the following after that comment:

<Target Name="AfterBuild"><AspNetCompiler VirtualPath="temp" PhysicalPath="$(ProjectDir)" /></Target>

Source - Compile Aspx pages at compile time using the AspNetCompiler build task

Upvotes: 21

Related Questions