Is there a way to create an installable (ideally XCopy installable) version of an ASP.NET MVC application that will run in a standalone fashion on a Windows XP machine?
I don't mind installing SQL Server Express for this purpose, so I guess the question boils down to this: Can the Cassini web server that comes with Visual Studio 2008 be bundled with the application? Or are there other options?
NOTE: The installation is for demo purposes only, so there are no licensing problems. Also, I am suggesting Cassini because I don't know of a way to install IIS7 on Windows XP. I can't do major hackage on the registry to get this to work.
Not sure if it'll help, but you could definitely check out the UltiDev Cassini Web Server, which can be bundled with your app and should support what you need.
You can package, embed, bend fold and spindle CassiniDev with my blessings.
I have been told that it suits this purpose admirably.
I think this is a bit old, but check out http://msdn.microsoft.com/en-us/magazine/cc188791.aspx.
Also, the ComponentArt demos run on Cassini.
My company makes a product for this purpose called the Neokernel Web Server which includes several features that are missing from cassini like SSL support, logging, multi-threaded request processing, and the ability to start/stop/configure the server from your own process.
A free 30 day evaluation license is available for testing and evaluation purposes.
http://www.neokernel.com
Related
I have Visutal Studio 2012, MVC 4 & Razor. I am having trouble getting a website up and running with this technology.
The Web Server is a Windows Server 2008 server. I tried deploying using the Web Deploy method but am consistently getting something like 'set ACL" error.
I tried deploying using the File System. All files got deployed, but when I try and run the website, it fails because of missing ASP.NET MVC infrastruccture files.
Two things:
•If I use Web-Deploy, how do I solve the ACL error, because I assume with this method, everything needed will get deployed.
Note that the Web Deploy 3.0 service is on the server and started.
•If I use File System, where can I find the downloads needed to deploy on the server where MVC WILL work.
◦Note that I downloaded the 4.5 Framework and was successfully installed.
You need to be a bit more precise with what you need help with.
What's the exact error.
Often times you need to give the IIS users group access to at least read from the directory where you've deployed. Did you do this already?
Do you have .NET 4.5 and MVC4 installed on the server? If not, are you expecting those DLLs to be "packaged" with your deployment? They generally are not since they are "standard" assemblies. But if you want them to be included in your deployment you can do that by selecting the references in VS and saying "copy." This is not recommended because when you install patches to .NET and MVC on the server, those updates will not carry through to your app, since it'll use the local (old) copies of your assemblies.
This may be more of an IIS issue, but not sure based on the details in your question.
Check that the application pool that the site is running under is using .net 4.0.
Just a thought I would check.
The project is developed using ASP.NET MVC framework and heavily relies on .NET 3.5.
What would be the best solution to allow a web designer, who is using OSX, to develop the site's UI? Basically he would just need to edit the aspx, css and js files, but also run the web application locally.
I've thought of some possibilites:
Install parallels/vmware/bootcamp and set up everything as you would for windows. Bad: it would be slow, OSX user doesn't like working in windows
Set up Mono and run the webapp on that. Use whatever tool you want for editing the front end files. Bad: does mono support MVC framework, .NET 3.5 and database connections? Unfamiliar platform, so possibly a lot of work setting it up, if it even will work.
Run the site on a separate server, and edit the front end files via network drive. Bad: our development server is so slow that seeing the changes takes too long...
Do you have other ideas or comments for these options?
Thanks!
You could try using a virtual machine. VirtualBox is a free one and is quite simple to setup. The only downside is that you need your own copy of Windows...
What you really need to do is have your web designer mock up the pages in static HTML, CSS, and JavaScript first (in their environment of preference.) Once that's done, adapting the markup to the ASP.NET project should be easily doable by yourself or the designer on a Windows machine (or virtual machine, your preference).
The MVC framework is part of Mono. Ares Technica has an article about the MVC framework and running it on Mono.
While it seems that some people were able to hack the framework to work on Mono back in March and April of this year, Microsoft has since released the MVCframework as open source and it is now fully supported by Mono as of the 2.4.2 release.
Here is a link to the most recent Mono releases along with Virtual Machine images that already been pre-configured to give you the best development experience.
Good luck with your project and hope this helps some.
I developed a Windows service which is running without any problem in Windows XP service pack 3. When I deployed this service in Windows Server 2008 it is not working. The service started without any problem.
I enabled the option Windows XP service pack 2 from the compatibility property of the .exe which deployed there.
But no more action after the starting the service.
What could be the problem?
One thing I would check it to see if any of your referenced assemblies are 32bit specific. We ran into a similar problem when using Microsoft SQL Server Reporting Services. The .dll we used to get a list of the web service interfaces, was 32bit/64bit specific, so we had to swap it out depending on which envionment we were running on.
Since the error could hide anywhere I would suggest to first discern what exactly is not working under Windows Server 2008.
Implement some logging functionality into your service (if you didn't do so already, I strongly recommend it) and let the result be printed into a log file. See what's working and when it stops to work. Hopefully this will give you a better understanding of what's going on under the hood.
Also, this way we can help you way better than now.
[EDIT]
Maybe these two can help you?
COM Class Factory Error
Running 32 bit app using 32 bit com on a 64 bit Windows machine
ASP.Net MVC is finally available as version 1. I have been waiting for an official release before I try to start using it. At the moment I have a dedicated web server which I have complete access to via remote desktop. It is running Win 2003 Server with IIS6 (I think it is IIS6, they don't print the version in the Help -> About but a bit of research says that IIS6 is the standard on Win 2003 Server) and .Net 2.0.
Obviously I will need to upgrade the framework to .Net 3.0. But after that, should everything else work? I thought I saw somewhere that .Net 3.0 insists on IIS7. If that is true is IIS7 compatible with Windows 2003 Server?
Also any literature you can point me to or any tips on making the upgrade/transition?
EDIT:
Sorry too excited guys. Yes I meant .Net 3.5. :D
EDIT: LAST QUESTION:
Someone mentioned a routing problem. I remember reading that somewhere but can't quite remember. My project relies heavily on a good Google Ranking and I don't want to sacrifice page rank because of a routing problem. Will I still be able to get around it with IIS6? Thanks again. :D
You'll need .NET Framework 3.5, not 3.0. Better be SP1. There'll be no problems with that setup. Make sure your read http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx
By the way, IIS7 cannot be installed on Windows Server 2003. ASP.NET MVC and .NET Framework 3.5 SP1 do not rely on any IIS7 specific features.
As per the link mentioned by Andrew (above), you have two choices with IIS6:
Add the mvc prefix to the routes (eg. {controller}.mvc/{action}/{id} )
Use the wildcard mapping (only IIS6/Win2k3 and not win XP/iis 5.1)
The drawback of number 2 is that it can cause performance problems if you have a lot of traffic. However, there is workaround to this that involves creating a separate subdirectory for static files like gifs/jpegs/scripts etc. See Steve Sanderson’s blog post for details
Yes, it's possible to run an ASP.Net MVC site on Windows 2003 server running IIS 6.0, though there's a little more configuration to do in IIS 6.0 because of the routing. Oh, and you'll need .Net Framework 3.5 SP1.
The documentation and steps you'll need to take are on the ASP.Net MVC deployment page :o)
On Windows 2003/XP, we use IIS7 Express to host our ASP.NET 4 MVC 3 web applications.
I have an interesting situation where I need to deploy an ASP.NET MVC app to a (pseudo-boss's) local desktop machine so they can run it locally for data entry purposes. What would be the best way to get the app running on a vista machine without Visual Studio installed?
Ideally, It would be a one click that started a development web server and opened the page up in the browser.
I considered installing Visual Web Developer and then tricking it's dev web server into running the app, or even installing mono, since it has the nice 'start xsp here' feature that even a non-technical person can understand. The big thing is that this person is not very technical, so it needs to be easy for them to start and stop the application.
You need IIS installed, which should be available for Vista. Then just set up a working directory and put your app there, it's not 1 click but maybe.,.. 5.. :)
What about the Microsoft Web Platform Installer? You'd still have to add your own application, but it takes care of .NET, IIS, and dependencies.
Could you use something like UltiDev Cassini: http://www.ultidev.com/products/Cassini/ and build your own installer to set everything up for your user?