views:

396

answers:

2

In Visual Web Developer Express 2008:

I would like to know the difference between debugging with:

Use local IIS web server

and

Use Custom web server

I'm using IIS7 on windows vista and the only difference I've noticed is that you need the IIS6 compatibility component for Local IIS and, more importantly,

that debugging with Local IIS always triggers a build were as Custom web server doesn't trigger a build which allow you to start your website without debugging that create a situation that you would like to debug (which can take a long time if your website needs a lot of time fetching stuff from memcache, database searches etc on startup). Then with custom webserver I can just debug the site and pick up that situation I allready created...

So I was wondering, why would anyone use Local IIS over a custom webserver.

It must have some advantages, otherwise it wouldn't be there...

Thnx Jaap

A: 

The advantages that you'd get with Local IIS include:

  • the environment will be much closer to your deployment environment
  • if there are other ISAPI filters or handlers you're using, you'll need the IIS hosting to get them
Michael Burr
I'm running IIS as closely as possible to the deployment environment, so this is not an advantage to me.In IIS7 we can just configure everything we need in web.config, how would these not be available when using Custom web server?
Jaap
But if you're debugging with a custom webserver you're not using IIS, right? So being closer to your deployment setup is an advantage to setting up the debugger to use IIS instead of the custom server.
Michael Burr
Hi Michael,That's exactly the question I'm asking. I'm using IIS7 on Vista as my Custom webserver, because I found that when I start debugging the web application only builds if needed. I found that debugging a web application using local IIS option *always* triggers a build, thus a restart of the site...
Jaap
A: 

Another disadvantage that you may not have come accross is when you are working on multiple versions of the same solution (i.e. you have different branches for bug fixing and new features) from different directories then you have a problem where one solution version creates the virtual directories and maps it to your project output; when you open the other solution it then tries to do the same but fails as the virtual directory is already mapped. You have to delete the original virtual directories before the second solution is loaded - a pain when you have to switch between versions.

The only way i can think to get around this (apart from using the Custom Web Server) is to rebase your workspace to a different branch and synchronise. Although i only know of PureCM that can do this (i'm sure more SCM systems are capable), the horriblness that is TFS Source Control (come on Microsoft, you're not fooling anybody, it's still just SourceSafe in a frock) which i am stuck with at work cannot.