WSS 3.0, ASP.NET 2.0, WebParts authoring

As we're working to support WSS 3.0 in our upcoming version, I've been working with WSS 3.0 a lot lately and really been impressed by some of the changes from WSS 2.0.  In the following blog post, the main topic is authoring WebParts in the 3.0 version, but it happens to also include a nice description of some of the initial HTTP routing changes (ISAPI filter no longer needed!)

https://blogs.msdn.com/yasinalladin/archive/2006/11/24/write-custom-webparts-for-windows-sharepoint-services-3-0-and-asp-net2-0.aspx

Windows Sharepoint Services (WSS) 3.0 is built on top of ASP.NET 2.0, All WSS 3.0 incoming request routes through the ASP.NET runtime before WSS. This changed forced to remove the ISAPI filter which was used in previous version of WSS2.0 and adding HTTPModules and HTTPHandlers that are registered with ASP.NET using standard web entries.

 

Following is a high-level overview of the obvious integration point between ASP.NET 2.0 and WSS3.0:

1. When you register an IIS web application to become WSS3.0 web app, WSS3.0 adds a wildcard application map to IIS metabase. This wildcard application map serves to route all incoming http request to ASP.NET runtime regardless of their extension e.g. .doc etc.

2. ASP.NET 2.0 introduced a new pluggable component type known as Virtual Path Provider. WSS 3.0 has its own virtual path provider called SPVirtualPathProvider which is able to retrieve an .aspx page from SQL Server and hand it off to .aspx page parser supplied by ASP.NET 2.0.

...