Victor Garcia posts up about Microsofts plans to integrate ASP.NET into IIS in the Longhorn timeframe, although he didn’t specifically mention IIS 7.0. Like Victor, I am also an ASP.NET MVP so I do have some interest in how this turns out, but unfortunately I haven’t been able to communicate effectively with the team (my fault not theirs).

The move from IIS 5.0 to IIS 6.0 saw a few exciting changes in the process model for hosted applications. They managed to make the right trade-offs in the areas of security, performance and stability and ended up with what I consider to be one of the best web servers around – once you get it set up – more on this at the end.

I think there are really two ways we should be able to interact with IIS, currently there is only one – this is called the “host your app inside IIS” model. I would like to have a “host IIS in your app” model too! What I mean is that it would be nice to be able to deploy ASP.NET applications with the requisite IIS pipeline pieces without the system administrator having to do any more than give you a Windows box.

If I am building an enterprise application it is always a pain to have to deploy an ASP.NET application and some kind of Windows Service to perform robot functions (like notifications etc). Instead I would like to be able to drag a component (yes, I mean a component) onto the Windows Service design surface, tell it to point to a directory with my ASP.NET files and host the whole shebang inside the one process.

That means from a system administrators point of view, all they have to do is start or stop a service and the whole system is down or up. Thats neat. We are so close to this model already with the ability to spin out application pools, so the memory footprint wouldn’t be a problem – in fact it might be lighter since the Windows Service and the ASP.NET application would both share the same runtime overhead.

IIS should also support administration the way it does now, but the system administrator portion would really just be management tools to create dumb hosts for applications.

Now – back to set up. This has long been a gripe of mine with IIS, its a pain to set up an application, and it actually got a little worse with IIS 6.0 because you had to think about what rights you gave the worker process for the application pools. I would like this simplified even if it meant the Identity tab of the application pool properties actually went and created a user account for you with all the right group memberships and OS rights.