Introduction

WSCF.blue is the WCF version of the orginal Web Services Contract First tool.

When developing Web Services, the first step is usually to:
  • Design your contract's data, messages and interface
  • Generate code from the contract

This first step can be done either in code or can be done with XML and XSD. As it turns out a number of enterprise scale projects prefer to take the second option. And for many integration and application development scenarios (not only at the enterprise level) it is customary to negotiate a WSDL/XSD based specification for the web services and then to embark on the actual development of the code that implements that specification. However, dealing with raw XML and WSDL can be very error-prone. WSDL in particular is non-trivial to handle as the original WSDL specification allows room for some complicated constructs and contracts to be defined. We need tools that can enable us to work at this level consistently and reliably and WSCF aims to address this need.

For more information on contract-first web service development and a quick walkthrough on using WSCF.blue, please read the Schema-based Development with Windows Communication Foundation article on the MSDN Magazine website.


The WSCF.blue tool

WSCF.blue is a Visual Studio .NET 2008 add-in that provides the following features:
  • A WSDL Wizard that allows the developer to step through the creation of a WSDL from one or more XSDs.
  • A Data Contract Generator (similar to XSD.exe, XSDObjectGen.exe and Svcutil.exe) that generates the . NET equivalent of the XSD types.
  • A Service/Endpoint Stub (SVC) Generator and
  • A Client Proxy Generator.
  • A Generate Data Contract Code feature that supports the selection of multiple XSD/WSDL source files. (More Information)
  • Support for C# and VB.NET code generation.
  • You can choose if operation methods on your service class will throw a NotImplementedException, call an implementation method in a partial class, or will be defined as abstract methods. (More Information)
  • Force the SOAP actions (Action and ReplyAction) applied to each operation contract follow the standard WCF format: <namespace>/<service>/<operation>[Response]
  • A Paste XML as Schema option that generates a schema for a block of XML in the clipboard. (More Information)
  • Errors found in your WSDL are reported in a WSCF.blue pane in the Output window. (More Information)

For the endpoints and the client proxy, WSCF also generates the necessary configuration file.

Current Release

The current release is V1 (1.0.5). This is an MSI which will install the Visual Studio .NET 2008 Add-In.

Pre-requisites

  • Visual Studio 2008 SP1 (and .NET 3.5 SP1).

Current Priority 1 Issues:
  • Generated code does not define a host base address and metadata endpoint extension configuration does not generate an absolute URI for the endpoint by default. This angers the service host if you try to initialize it with generated config. In order to fix this you always have to go and specify an absolute URI for metadataUrl parameter in metadataService configuration element.

WSCF 'Classic'

The previous version of the WSCF tool (v0.7) which targeted ASMX / .NET 2.0 is now available in source form here at CodePlex and it is called WSCF.classic.

Walkthrough / Documentation

A detailed scenario-based step-by-step guide for WSCF 0.7 available here. A lot of that material is still relevant and applicable for this WCF version. We plan to have a new walkthrough available soon focussing on the WCF aspects.

Roadmap

We have a number of ideas as to where we would like to take this tool and will be publishing a roadmap shortly which we will invite you to vote on so we can priortise the features. However, right now , we would really appreciate your feedback on the quality of this release and your bug reports and other suggestions. We will endeavour to fix them as soon as possible. (If you would like to join the project and help us implemnet some of the features, fix the relevant bugs etc please send us a note).

Working with the Source

For users of the source code, do note that it is now possible to just debug using F5 as there is a post-build step attached to the add-in project (.ContractFirst project) which launches VS in the experimental hive so there is no need to install the MSI first. If you have roaming profiles for VS, then take a look at a post in the forum which shows how to handle the add-in location with roaming profiles.

You will notice from the SourceCode tab, that some checkins are labeled with API-Branch. This branch is a work in progress (and is part of our roadmap) and corresponds to our efforts to making WSCF more API friendly and usable from or with other tools (instead of having all functionality tied into the add-in and the UIs as it is now). We still have a long way to go in this area, but will be sync-ing changes from Main to these regularly, although the Installer project has not been updated with new project names, references etc. so you may not be able to build an MSI in these branches at the current time but you can work with the source if you wish. If you have any comments on source structure, possible refactorings etc., we would welcome your feedback.
Last edited Oct 5 2009 at 10:16 AM by alexmeyergleaves, version 30

 

Want to leave feedback?
Please use Discussions or Reviews instead.

Archived page comments (2)

Updating...
© 2006-2010 Microsoft | About CodePlex | Privacy Statement | Terms of Use | Code of Conduct | Advertise With Us | Version 2010.1.12.16187