35

It's really annoying that visual studio hides typos in aspx pages (not the code behind). If the compiler would compile them, I would get a compile error.

0

5 Answers 5

27

Compile the pages at compile time. See Mike Hadlow's post here:

http://mikehadlow.blogspot.com/2008/05/compiling-aspx-templates-using.html

Sign up to request clarification or add additional context in comments.

Comments

11

Go to your project properties. Go to the Build Events tab.

In the Post-build event command line: text area, write this (for .NET 4.0):

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_compiler.exe -v / -p "$(SolutionDir)$(ProjectName)"

Comments

4

Resharper will catch errors in code ofASPX pages, all without compiling. works well imo, and better than later compiling.

EDIT: Resharper also has a Solution wide error checker. 'Resharper->Windows->Errors in solution'. It will analyze your entire solution and give a consolidated list of everything it finds, INCLUDING aspx files.

4 Comments

Resharper does catch the errors, but only when the file is opened.
But you need to create and edit the first, which means you should catch the error.
What if you delete a property from a model, and reference it in your view as <% = ViewData.Model.DeletedProperty %> your code compiles, but your page is broken...
If that wont suffice, then you could always do a full precompile.
1

It is my belief you should always compile ASP.NET applications. There are a few instances where my clients requested otherwise. In Visual Studio, when you choose to publish your website, there is an option to have it compiled. Here is Microsoft's MSDN article which offers their information on compiling sites.

http://msdn.microsoft.com/en-us/library/ms178466.aspx

HTML issues and such will show up as "warnings" and not errors. So, you'll have to check the logs.

Comments

0

There is the possibility to precompile the whole web: usually the pages only get compiled, if they are used.

To precompile the web, please refer to MSDN

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.