Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET Development Server or Localhost IIS?

Currently our dev team set up all the websites they're working on in IIS on their local machine. We're thinking of switching to using the built in ASP.NET development server instead.

Is this a good idea? What are the pros / cons of using the ASP.NET dev Server? Are there any gotchas we should be aware of?

Thanks.

NB: Running on Win XP / IIS 5 / VS2005

Edit:

Didn't realise it was called Cassini.. More answers for Cassini v IIS here.

like image 678
Nick Avatar asked Nov 11 '08 17:11

Nick


People also ask

Does ASP.NET require IIS?

The answer is, no you don't.

What is the difference between IIS and web server?

IIS is a webserver. Web server is a general term where as IIS is a web server that has been created by Microsoft.

Is IIS a webserver or application server?

Microsoft IIS (Internet Information Services) is a free web server software package for Windows Server. IIS only runs on Windows operating systems.

How does ASP.NET work with IIS?

IIS has its own ASP.NET Process Engine to handle the ASP.NET request. So, when a request comes from client to server, IIS takes that request and process it and send the response back to clients. Hope, till now it's clear to you that what is the Web server and IIS is and what is the use of them.


2 Answers

There is nothing that the ASP.NET Dev WebService can do that IIS can't (You can set breakpoints etc, just attach the VS debugger to the ASP.NET runtime).

However, the ASP.NET Dev WebService does not represent a true production environment, and as such you can get caught by gotchas that you wouldn't expect when you deploy to production.

Because of that, I mandate that all development is done using IIS on a local machine. It doesn't take much work to configure a site in IIS.

like image 83
FlySwat Avatar answered Sep 25 '22 01:09

FlySwat


It's a very good idea. Here are some reasons for:

  • You no longer need admin access to your machine for web development (it can still be helpful).
  • It's much easier to test a quick change and continue work, and faster iteration cycles are good.
  • It can simplify setup and deployment of your development environments.
  • The XP version of IIS has limitation that are not present in the Server version that Cassini side-steps.

The only argument I know against is that there are a couple very rare edge cases where the Cassini built-in server doesn't exactly mimic IIS because you're using odd port numbers. I doubt you'll ever run into them, and using Cassini as the primary dev environment does not preclude developers from also having access to IIS on the machine. In fact, my preferred setup is Cassini first for most small work, then deploy to my local IIS for more in-depth testing before moving code back to the shared source repository.

[Edit]
Forgot about url re-writing. You do need IIS for that. And an example of a limitation of the built-in XP IIS is that you are limited to one site in XP (can have multiple applications, but that's a different thing).

like image 39
Joel Coehoorn Avatar answered Sep 25 '22 01:09

Joel Coehoorn