views:

40

answers:

2

Hey guys, in the Windows Features control panel applet, under Internet Information Services --> World Wide Web Services --> Application Development Features, there are two options: ".NET Extensibility" and "ASP.NET".

What is the difference between these two options? If I'm developing simple ASP.NET web applications / services, is there any need for the .NET Extensibility option?

I Google'd the terms, and came up with this link:

http://forums.iis.net/t/1146942.aspx

This link confuses me, because the response (from a supposed Microsoft employee) says that to test for .NET Extensibility, you create a simple ASPX page, and try to load it. That seems (to ME) more like a test for the ASP.NET option.

Any clues, folks?

A: 

This site talks about .Net extensibility in relation to IronPython: http://www.asp.net/learn/whitepapers/ironpython

You might want to review more info at this site: http://www.aspnetextensibility.com/

Assuming your developing asp.net sites in c# or vb.net then you will need the ASP.Net support. To sum up, it's probably one of those things you'll be able to define when you actually need the .Net Extensibility option installed.

However, if you really want to know: .Net Extensibility is an IIS 7 feature which brings the ability to extend IIS 7 via the runtime extensibility model into the core server product.

Building "regular" sites (whatever those are), don't worry about it. Needing to get down and dirty by modifying the pipeline through modules or handlers? Install it. Either way, you are still going to need the regular ASP.Net support installed.

With regards to what the MS guy said about the Hello World file.. Ignore that, he didn't read the full question...

Chris Lively
Excellent response. Thank you for clarifying.
Trevor Sullivan
A: 

In versions of IIS prior to 7.0, the ASP.NET pipeline was separate from the web server's request processing pipeline. The web server's functionality was usually extended via ISAPI filters and extensions.

However, in IIS 7.x they are more tightly integrated, which allows for the server to be extended using managed code, via the ASP.NET extensibility APIs. Two primary ways this can be done are via modules and handlers, which are quite similar to ISAPI filters and extensions respectively.

The APIs of interests are:

You can read more about how to extend the server in the articles below.

http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis-7/

http://learn.iis.net/page.aspx/170/developing-a-module-using-net/

http://mvolo.com/blogs/serverside/archive/2007/08/15/Developing-IIS7-web-server-features-with-the-.NET-framework.aspx

http://community.devexpress.com/blogs/paulk/archive/2009/03/30/implementing-an-ihttpmodule.aspx

http://msdn.microsoft.com/en-us/magazine/cc164128.aspx#S4

Garett
Excellent response also, thank you. Your answer was a little more in-depth, but I can only mark one answer :(
Trevor Sullivan