The file '/Default.aspx' has not been pre-compiled, and cannot be requested.

angelalaw used Ask the Experts™
Trying to do a patch release.

Site built with Web deployment projects.  It is set to be not updatable (which I believe means it will compile everything into a DLLs right?).

 I am trying to update a 3rd party dll.  I go into every bin folder that has it and copy the newest version into each folder.

I checked my web.config file to ensure that my 3rd party dll does not have version specified in it, which it doesn't.  We are not using multilpe version of the dlll.  One version only.

When I try to run the site I get

The file '/Default.aspx' has not been pre-compiled, and cannot be requested.

What does this mean and how can I resolve it?


Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
You need to first recompile, and then redeploy, the site with the new .dll. You can't just copy and paste it.
You get that error because the site was compiled against the older version of your 3rd party dll.


Thanks so much for your response :)

Is there anyway to release patched versions of it?

Ie windows constantly updates there DLLS... Many pieces of software use those DLLs.  When windows updates your machine, you are not required to recompile every piece of software that is installed inorder to get it to work.

This is the scenario I want to do?
I know what you mean, but if the application is precompiled, it used a specific version of the 3rd party library while compiling. It's like the 3rd party dll becames part of your dll.
A way to "patch" it, would be to have separate projects, thus separate .dlls, instead of one big application. Then, you can deploy smaller projects.
Another way, NOT recommended, would be to just copy your site, uncompiled. ASP.NET compiles files on the fly if needed, so that why you can do it this way.
Learn Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.


Hi Juan,

Right now we have 6 different projects in one solution.  Each having this DLL in its bin directories.

When I look at the output for the release folder for the entire site.  I see it still has the third party dll in its bin directory.  So, it doesn't appear to be merign the thrid party dll in with the overal projects.

Again I really appreciate your help,

It's not merging "per se", meaning that is not integrating the dll into yours, as in one file.
What is happening is that the code in your project that references (uses) that 3rd party .dll "knows" which assembly version of it was compiled against, so, if you just change the dll without updating those "references" (meaning: recompile), it will fail.
That's what I wanted to explain before, maybe the part "3rd party dll becames part of your dll" wasn't the best way to explain it, but you see what I meant now.


Thank you
remove your templorary files and runit in prod.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial