Saturday, March 24, 2012

The directory /App_Code is not allowed because the application is precompiled

I'm using VS.NET 2005 Beta 2. I have a helper C# class I wrote that I placed
in my /App_Code directory. Everything runs fine locally. However when I
use the "Copy Web" function to upload the site to the production server, I
get the following error when trying to run the page on production:
"System.Web.HttpException: The directory '/App_Code' is not allowed
because the application is precompiled."
Anyone know this works fine locally but not on development? How can I
resolve this?
Also on a related note I read a lot about a new "\code" directory in ASP.NET
2.0. Am I correct to assume that at some point they changed this from \code
to \App_Code and these are the same thing?
SteveHi, Steve.
re:
> Am I correct to assume that at some point they changed this from \code to
\App_Code and
> these are the same thing?
You're correct. In Beta 1 it was called /code.
In Beta 2, it was changed to /App_Code.
See http://msdn.microsoft.com/asp.net/w...eta2update.aspx
for a complete list of special directories.
re:
> "System.Web.HttpException: The directory '/App_Code' is not allowed becau
se the
> application is precompiled."
> Anyone know this works fine locally but not on development? How can I resolve thi
s?
You don't need to resolve it.
Because you're precompiling, everything that would go in the App_Code
directory is already compiled and doesn't need to be uploaded.
If you want to upload your source files into the
App_Code directory, don't precompile your application.
Juan T. Llibre
ASP.NET MVP
ASP.NET FAQ : http://asp.net.do/faq/
==========================
"Steve Franks" <please@.postreplyhere.com> wrote in message
news:dfKdnTtsD5yXYLneRVn-jQ@.comcast.com...
> I'm using VS.NET 2005 Beta 2. I have a helper C# class I wrote that I plac
ed in my
> /App_Code directory. Everything runs fine locally. However when I use th
e "Copy Web"
> function to upload the site to the production server, I get the following
error when
> trying to run the page on production:
> "System.Web.HttpException: The directory '/App_Code' is not allowed becau
se the
> application is precompiled."
> Anyone know this works fine locally but not on development? How can I res
olve this?
> Also on a related note I read a lot about a new "\code" directory in ASP.N
ET 2.0. Am I
> correct to assume that at some point they changed this from \code to \App_
Code and these
> are the same thing?
> Steve
>
>
> Because you're precompiling, everything that would go in the App_Code
> directory is already compiled and doesn't need to be uploaded.
> If you want to upload your source files into the
> App_Code directory, don't precompile your application.
>
I am not purposely precompiling my application. How can I prevent it from
precompiling?
Locally I just use VS.NET 2005 b2 to do the development and press F5 to run
it. Sometimes I press F6 to get a sanity check on whether I've screwed any
code up.
For production, I want the flexibility to be able to edit source on the
production server to make an update on the fly, so the precompiled approach
is not of interest.
My main goal is to just be able to easily synchronize the work I do at home
on the production server, and then get to work and easily update my local
dev copy of the web app to reflect the changes I've made at home by syncing
with the production server. Then I'll make changes at work, and when I get
home, I'll want to sync my home machine up with what's now on the production
server, and so forth. Currently I'm (trying) to use the Copy Web function
for this. Is that appropriate and/or is there a better way?
Thanks,
Steve
Juan,
Any ideas about what I posted below? Looking forward to your response. Than
you so much.
Steve,
"Steve Franks" <please@.postreplyhere.com> wrote in message
news:H_qdnYfD0ILDNrjeRVn-hQ@.comcast.com...
> I am not purposely precompiling my application. How can I prevent it from
> precompiling?
> Locally I just use VS.NET 2005 b2 to do the development and press F5 to
> run it. Sometimes I press F6 to get a sanity check on whether I've
> screwed any code up.
> For production, I want the flexibility to be able to edit source on the
> production server to make an update on the fly, so the precompiled
> approach is not of interest.
> My main goal is to just be able to easily synchronize the work I do at
> home on the production server, and then get to work and easily update my
> local dev copy of the web app to reflect the changes I've made at home by
> syncing with the production server. Then I'll make changes at work, and
> when I get home, I'll want to sync my home machine up with what's now on
> the production server, and so forth. Currently I'm (trying) to use the
> Copy Web function for this. Is that appropriate and/or is there a better
> way?
> Thanks,
> Steve
>
I would check your web project's properties under MSBuild.
-Brock
DevelopMentor
http://staff.develop.com/ballen

> I am not purposely precompiling my application. How can I prevent it
> from precompiling?
> Locally I just use VS.NET 2005 b2 to do the development and press F5
> to run it. Sometimes I press F6 to get a sanity check on whether I've
> screwed any code up.
> For production, I want the flexibility to be able to edit source on
> the production server to make an update on the fly, so the precompiled
> approach is not of interest.
> My main goal is to just be able to easily synchronize the work I do at
> home on the production server, and then get to work and easily update
> my local dev copy of the web app to reflect the changes I've made at
> home by syncing with the production server. Then I'll make changes at
> work, and when I get home, I'll want to sync my home machine up with
> what's now on the production server, and so forth. Currently I'm
> (trying) to use the Copy Web function for this. Is that appropriate
> and/or is there a better way?
> Thanks,
> Steve
>
Well, there seems to be some sort of a conflict or design issue here with
this restriction.
I decided I'd just delete my App_Code directory from the remote site. I
figured this would be OK since its tellin gme the application is
precompiled. Yet then when I go to run a page it complains "The name
'myclass' does not exist in the current context". So if everything was
precompiled and no app_code directory is needed then what's the problem
here?
My preference is to precompile locally as I test and run my app, and then
when I publish to the remote server I want to publish all the files. I
can't seem to work around this. Any ideas?
Steve
"Brock Allen" <ballen@.NOSPAMdevelop.com> wrote in message
news:b8743b112290a8c7868466d649ee@.msnews
.microsoft.com...
>I would check your web project's properties under MSBuild.
> -Brock
> DevelopMentor
> http://staff.develop.com/ballen
>
>
re:
> My preference is to precompile locally as I test and run my app
I thought you had said you did *not* precompile.
There's a difference between "precompile" and "compile".
Which one are you doing ?
Have you tried to FTP your files instead of "publishing" them ?
Juan T. Llibre
ASP.NET MVP
ASP.NET FAQ : http://asp.net.do/faq/
==========================
"Steve Franks" <please@.postreplyhere.com> wrote in message
news:gqqdnfBdIfGOFbrenZ2dnUVZ_s2dnZ2d@.co
mcast.com...
> Well, there seems to be some sort of a conflict or design issue here with
this
> restriction.
> I decided I'd just delete my App_Code directory from the remote site. I f
igured this
> would be OK since its tellin gme the application is precompiled. Yet then
when I go to
> run a page it complains "The name 'myclass' does not exist in the current
context". So
> if everything was precompiled and no app_code directory is needed then wha
t's the
> problem here?
> My preference is to precompile locally as I test and run my app, and then
when I publish
> to the remote server I want to publish all the files. I can't seem to wor
k around this.
> Any ideas?
> Steve
> "Brock Allen" <ballen@.NOSPAMdevelop.com> wrote in message
> news:b8743b112290a8c7868466d649ee@.msnews
.microsoft.com...
Sorry about the confusion. Let me explain specifically what I'm trying to
do.
Locally I'm using whatever the default settings are, as it relates to
precompiling. When I look at the property pages of my ASP.NET web
application, and click on the Build section, the revelant sections say
"Before running startup page: Build Web Site". And "Build solution action"
section has the check box checked for "Build web site as part of solution".
That is how I like to run things because I prefer to know about any mishaps
I've made coding-wise before the page runs.
Now over to production... I like the Copy Web function because it seems like
a convenient way from within VS.NET 2005 Beta 2 to easily have it sync the
production site with changes as I make them in development.
However recently I added a App_Code folder with a few utility classes I've
created. Now when I do the Copy Web the production site complains that the
App_Code folder is not allowed.
So my questions specifically are:
1) Is there a way where I can still use Copy Web in this scenario?
2) If not, how do I tell my local machine to not precompile and clear itself
from any precompiled files, so that when I do a copy web the remote site is
not in a precompiled mote? In other words, I assume my local machine has
the precompiled files that are being copied with Copy Web. So I do these
get deleted, and how do I set things set up locally so its no longer
prcompiled, so that my production server will be happy once I do a complete
Copy Web to try and straighten things out?
3) If I have to resort to a FTP copy, files with what extension should get
copied specifically? Or perhaps its easier toi look at it the other way -
which file extensions need to be deleted from the production server so it
does not see the web pages there as being "precompiled"?
Thanks so much. I'm looking forward to your answer as I have been stuck on
this for a few days. I really appreciate the help.
Steve
"Juan T. Llibre" <nomailreplies@.nowhere.com> wrote in message
news:OvKJFZOuFHA.2072@.TK2MSFTNGP14.phx.gbl...
> re:
> I thought you had said you did *not* precompile.
> There's a difference between "precompile" and "compile".
> Which one are you doing ?
> Have you tried to FTP your files instead of "publishing" them ?
>
> Juan T. Llibre
> ASP.NET MVP
> ASP.NET FAQ : http://asp.net.do/faq/
> ==========================
> "Steve Franks" <please@.postreplyhere.com> wrote in message
> news:gqqdnfBdIfGOFbrenZ2dnUVZ_s2dnZ2d@.co
mcast.com...
>
>
Hi, Steve.
What this sounds like is that, at some point, the "Publish Web Site"
tool was used instead of the "Copy Web" tool, and that the
"Allow this precompiled site to be updatable" option was not selected.
See : http://msdn2.microsoft.com/en-us/library/1y1404zt
for a step-by-step guide to using the "Publish Web Site" tool.
You can change the "Allow this site...to be updatable" option.
You might also want to take a look at the "Copying a website" walkthrough:
http://msdn2.microsoft.com/en-us/library/xay0wxbf
and at : http://msdn2.microsoft.com/en-us/library/1cc82atw
"Copying Web Sites with the Copy Web Site Tool"
You might be missing a key step in the process,
and reviewing those walkthroughs might point it out to you.
Juan T. Llibre
ASP.NET MVP
ASP.NET FAQ : http://asp.net.do/faq/
==========================
"Steve Franks" <please@.postreplyhere.com> wrote in message
news:OeednTMpv_Zaj7XenZ2dnUVZ_s2dnZ2d@.co
mcast.com...
> Sorry about the confusion. Let me explain specifically what I'm trying to
do.
> Locally I'm using whatever the default settings are, as it relates to prec
ompiling.
> When I look at the property pages of my ASP.NET web application, and click
on the Build
> section, the revelant sections say "Before running startup page: Build Web
Site". And
> "Build solution action" section has the check box checked for "Build web s
ite as part of
> solution".
> That is how I like to run things because I prefer to know about any mishap
s I've made
> coding-wise before the page runs.
> Now over to production... I like the Copy Web function because it seems li
ke a
> convenient way from within VS.NET 2005 Beta 2 to easily have it sync the p
roduction site
> with changes as I make them in development.
> However recently I added a App_Code folder with a few utility classes I've
created. Now
> when I do the Copy Web the production site complains that the App_Code fol
der is not
> allowed.
> So my questions specifically are:
> 1) Is there a way where I can still use Copy Web in this scenario?
> 2) If not, how do I tell my local machine to not precompile and clear itse
lf from any
> precompiled files, so that when I do a copy web the remote site is not in
a precompiled
> mote? In other words, I assume my local machine has the precompiled files
that are
> being copied with Copy Web. So I do these get deleted, and how do I set t
hings set up
> locally so its no longer prcompiled, so that my production server will be
happy once I
> do a complete Copy Web to try and straighten things out?
> 3) If I have to resort to a FTP copy, files with what extension should get
copied
> specifically? Or perhaps its easier toi look at it the other way - which
file
> extensions need to be deleted from the production server so it does not se
e the web
> pages there as being "precompiled"?
> Thanks so much. I'm looking forward to your answer as I have been stuck o
n this for a
> few days. I really appreciate the help.
> Steve
> "Juan T. Llibre" <nomailreplies@.nowhere.com> wrote in message
> news:OvKJFZOuFHA.2072@.TK2MSFTNGP14.phx.gbl...
>
Thanks. I thnk you hit the nail on the head in that at one point a long
time ago I did use the Publish Web Site tool and probably did not check that
option.
It looks like I've resolved it by deleting the entire remote site and then
using Copy Web over again.
Steve
"Juan T. Llibre" <nomailreplies@.nowhere.com> wrote in message
news:%235MIaCTuFHA.3188@.TK2MSFTNGP14.phx.gbl...
> Hi, Steve.
> What this sounds like is that, at some point, the "Publish Web Site"
> tool was used instead of the "Copy Web" tool, and that the
> "Allow this precompiled site to be updatable" option was not selected.
> See : http://msdn2.microsoft.com/en-us/library/1y1404zt
> for a step-by-step guide to using the "Publish Web Site" tool.
> You can change the "Allow this site...to be updatable" option.
> You might also want to take a look at the "Copying a website" walkthrough:
> http://msdn2.microsoft.com/en-us/library/xay0wxbf
> and at : http://msdn2.microsoft.com/en-us/library/1cc82atw
> "Copying Web Sites with the Copy Web Site Tool"
> You might be missing a key step in the process,
> and reviewing those walkthroughs might point it out to you.
>
>
> Juan T. Llibre
> ASP.NET MVP
> ASP.NET FAQ : http://asp.net.do/faq/
> ==========================
> "Steve Franks" <please@.postreplyhere.com> wrote in message
> news:OeednTMpv_Zaj7XenZ2dnUVZ_s2dnZ2d@.co
mcast.com...
>
>

0 comments:

Post a Comment