Some notes on software development... RSS 2.0
# Saturday, 24 December 2011

To compile MVC views at build time you can modify the MvcBuildViews option in the project file. To do this you have to manually edit your .proj file and setting MvcBuildViews=”true”. This gives you design time compilation of all your views so you can catch an silly view errors before running the website but the build time will be increased due to the extra compilation time.

However, when I set MvcBuildViews=”true” I immediately get the following build error:

It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS

The issue is caused by multiple web.config files in the obj folder. To fix this issue I added the BaseIntermediateOutputPath element to the .proj file. My .proj file now contains this:

<MvcBuildViews>true</MvcBuildViews>
<BaseIntermediateOutputPath>..\bin</BaseIntermediateOutputPath>

I also had to delete the contents of the existing obj folder.

Everything now builds and I get design time error checking of all the MVC views.

More information about this issue can be found here:
http://blogs.msdn.com/b/webdevtools/archive/2010/05/14/the-aspnet-compiler-build-task-in-visual-studio-2010-asp-net-mvc-2-projects.aspx

Saturday, 24 December 2011 19:09:41 (GMT Standard Time, UTC+00:00)  #    -
ASP.NET MVC | MSBuild
Navigation

Sign In
Extras
Statistics
Total Posts: 116
This Year: 0
This Month: 0
This Week: 0
Comments: 36
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2018
Hadrian Phillips

All Content © 2018, Hadrian Phillips
DasBlog theme 'Business' created by Christoph De Baene (delarou)