.NET VirtualPathProviders and Pre-Compilation

All we need is an easy explanation of the problem, so here it is.

We’ve been working on an application that quite heavily relies on VirtualPathProviders in ASP.NET.

We’ve just come to put the thing on a live server to demonstrate it and it appears that the VirtualPathProviders simply don’t work when the site is pre-compiled!!

I’ve been looking at the workaround which has been posted here: http://sunali.com/2008/01/09/virtualpathprovider-in-precompiled-web-sites/, but so far I haven’t been able to get that to work, either! (Well – it works fine in visual studio’s web development server – just not on our IIS box – again!).

Does anybody here have any more information on the problem? Is it fixed in .NET v3.5 (we’re currently building for v2.0)?

How to solve :

I know you bored from this bug, So we are here to help you! Take a deep breath and look at the explanation of your problem. We have many solutions to this problem, But we recommend you to use the first method because it is tested & true method that will 100% work for you.

Method 1

Unfortunately that is not officially supported. See the following MSDN article.

If a Web site is precompiled for deployment, content provided by a VirtualPathProvider instance is not compiled, and no VirtualPathProvider instances are used by the precompiled site.

The site you referred to is an unofficial workaround. I don’t think it’s been fixed in .NET 3.5 SP1

Note: Use and implement method 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply