Web Services Contract-First (WSCF) is an add-in for Visual Studio that has been recently updated to support Visual Studio 2005, and it is free.

Web Services in Visual Studio (through ASP.NET) is ridiculously easy to implement. So what exactly is WSCF? Right now in Visual Studio, you generate your code first, in C# or one of the other .NET languages. Then from your code, the interface definitions for your web service is generated (the WSDL, or Web Service Definition Language).

WSCF basically works (in a nutshell) in the opposite direction - you first generate the definition of your interfaces in a schema, then the tool will generate the WSDL code, then the implementation code stubs for your web service from the WSDL.

This accomplishes one main thing, your “contract” (your web service interface) and messages are not tied to a specific implementation language, like C# - just in case you need to switch platforms, etc. This is a boon for shops that want to prevent vendor lock-in, or to have an option to upgrade (or downgrade?) to a different platform (say going from Windows ASP.NET servers to a Sun Java web services option…). Never limit your options, I say…