Deployment question regarding App_GlobalResources.compiled - asp.net

For ASP.NET Web Site, when I modifiy resouce files, is it necessary to deploy the new App_GlobalResources.compiled along with App_GlobalResources.dll to the server?
Thanks.

yes, you need to deploy these dll (App_GlobalResources.dll
), because global resources were built in dll
Follwing files you need to deploy
App_global.asax.compiled
App_global.asax.dll
App_GlobalResources.compiled
App_GlobalResources.dll

Related

Application Insights added ConnectedService.json file to my project, Do I have to deploy it to the production server?

Follow up to this question:
Application Insights added ConnectedService.json file to my project, what does this do?
When I create a deployment package, via "Publish..." option, the package also include the following folder and files:
Service References\Application Insights\ConnectedService.json
I do not want to deploy something that is not required at runtime. Do I have to include the folder and file in my production server deployment?
No. Those files are only used by visual studio for its information, to know what services have been added and give you links back to them inside VS. None of that needs to be deployed. those files can all be set to do not copy/etc.

How to deploy a dll file(s) into IIS?

I need help on how to deploy a dll file into IIS. I searched on the internet but no luck i found nothing similar to my problem. I can able to publish and deploy an ASP.net into IIS but what I need is a single dll file and deploy to IIS.
Is it possible to deploy an dll file only into IIS? If yes, please share an information on how to do it. Thanks in advance.

AppHarbor: The directory '/App_GlobalResources/' is not allowed because the application is precompiled

I trying to deploy my ASP.NET WebForms application to AppHarbor. After a succesful deploy I get
The directory '/App_GlobalResources/' is not allowed because the application is precompiled
I disabled the Precompilation in the app settings but it did not help. What should I do? Should I change some settings in my project o is it a server configuration thing?
I found a solution deleting the PrecompiledApp.config but I do not have access to it on AppHarbor.
All you need to do, if your site is Precompiled, is to make sure that the directory /App_GlobalResources is deleted from your deployment location.
I had the exact same problem, and when I removed this directory it all worked very well.
NOTE: Its good to have your site precompiled so it is faster and more responsive, and therefore it may not be a good idea to remove precompiledapp.config file from your deployment folder.
The trick is not only to disable the Precompilation in the app settings but also to deploy a new version so the app gets restarted.

Running an ASP.NET Web Application on Apache with Mono

I have developed an ASP.NET web application that has the following files (after being published): Default.aspx, Web.config, .dll (in bin folder), .pdb (in bin folder), and an App_Data folder that currently has nothing in it. This application runs well in Visual Studio.
My company uses Apache so the IT department decided to try Mono to run my application. Unfortunately, the application does not run. A question that was asked of me was where the .cs file was located. Out of the output files, after publishing, I cannot seem to find the .cs file that the .aspx file is suppose to refer to. Am I missing a file out of the list that I provided above?
Also, does anyone know soem rules of thumb or processes for getting an ASP.NET web application to run through Mono. I just need some direction.
I really appreciate everyone's feedback on this.
Thank you,
DFM
You need to install mod_mono on Apache. There is more information about this on the Mono ASP.NET page. The .cs is compiled into the DLL is not needed at run-time.
The .cs files would be compiled into the DLL, so they are not needed for deployment. Other than that, we would probably need some more information to figure out why the app won't run under Apache/Mono.

ASP.NET Web Deployment Projects: getting rid of .compiled files

I'm using a Web Deployment Project in Visual Studio 2008 in order to prepare my ASP.NET application (ASP.NET web application, not ASP.NET web site) for being copied to several servers. I have to copy the files on local staging servers, on different servers via FTP and sometimes I have to fetch them from customers' servers.
So, it would be nice to have all files for deployment in a compact form without the necessity of doing a lot of comparing between source and destination. Web deployment projects have this nice feature: compile all your aspx and ascx files into a single (additional) assembly.
I somehow found out how to get rid of aspx placeholder files on the server, now I'd like to know if there is a (maybe self-made) way to get rid of these .compiled files.
From Rick Strahl's blog:
The .Compiled file is a marker file
for each page and control in the Web
site and identifies the class used
inside of the assembly. These files
are not optional as they map the ASPX
pages to the appropriate precompiled
classes in the precompiled assemblies.
If you remove the .Compiled file, the
page that it maps will not be able to
execute and you get a nasty execution
error.
Anybody out there with a creative idea, maybe using a module/handler which intercepts the check against the .compiled files in the bin folder?
The .compile file comes from pre-compiling on deployment. So you basically have 3 options:
Keep the .compiled file
Don't pre-compile and deploy source code
Turn this in to a Web Application instead of a Web Site and compile as an assembly
I have run in to the same problem myself. I actually choose #1 in most cases when dealing with deployment of Web Sites, but on the rare occasion when I know I am going to have to maintain the site for an extended period of time, I take the time to upgrade it to a Web Application.
I don't like the .compiled files either, but nobody gets hurt if they're there. So why bother?
You might want to take a look at Virtual Path Providers (KB how to here) in ASP.NET.
Credit for this suggestion must go to Cheeso and his self answered question here:
Can I get “WAR file” type deployment with ASP.NET?
I don't know about the .compiled files, but you could set up your servers to update their files with subversion instead of manually copying the files when you compile.
So you would compile the files using the Web deployment project (not into a single assembly), put them in a repository you created for this purpose, and on each server, just do an svn update to fetch and compare the files automatically.
I know it's not what you asked for directly, but it may be a path to explore.
Add "Exclude Filter" to your deployment project:
In the Deployment Project.
Right Click on Content Files.
Click on "Exclude Filter".
Add "*.Compiled"
click OK.
and thats it.
I remember at the days when I cant do Web Application with VWD Express, I use nant script to compile the project into a single dll and deploy, that would work (so I dont need the full VS to do dll deployment too), so if you really don't want to mess your project to Web Application, maybe this is a path to check too.
You can get rid of the .compiled files by using the aspnet_merge tool with the -r option.
Removes the .compiled files for the main code assembly (code in the App_Code folder). Do not use this option if your application contains an explicit type reference to the main code assembly.
If you publish your code as updateable (in publish settings) these files are generated. Uncheck that value and republish. This is an old question I know, but no answers are clearly defined for this here.

Resources