This documentation is not maintained. Please refer to doc.castsoftware.com/technologies to find the latest updates.

Summary: This document provides basic information about extension providing WCF (Windows Communication Foundation) support for C# and VB.NET.

Extension ID

com.castsoftware.wcf

What's new?

See WCF 1.4 - Release Notes for more information.

Description

This extension provides support for WCF (Windows Communication Foundation). The calculation of Automated Function Points for your .NET analyses will be supplemented through the creation of new objects and links specific to the WCF framework that will link back to objects/links produced by the base .NET analyzer.

In what situation should you install this extension?

If your .NET application contains WCF (Windows Communication Foundation) source code and you want to view these object types and their links, then you should install this extension.

WCF framework support

The following WCF frameworks are supported by this extension:

Version
Supported
All versions up to 4.5(tick)

Function Point, Quality and Sizing support

This extension provides the following support:

  • Function Points (transactions): a green tick indicates that OMG Function Point counting and Transaction Risk Index are supported
  • Quality and Sizing: a green tick indicates that CAST can measure size and that a minimum set of Quality Rules exist
Function Points
(transactions)
Quality and Sizing
(tick)(error)

CAST AIP compatibility

This Technology Plug-in is compatible with:

CAST AIP release
Supported
Technology
8.3.x(tick)C# and VB.NET
8.2.x(tick)C# and VB.NET
8.1.x(tick)C# and VB.NET
8.0.x(tick)C# and VB.NET
7.3.7 and all higher 7.3.x releases(tick)C# only

Supported DBMS servers

This extension is compatible with the following DBMS servers:

CAST AIP releaseCSSOracleMicrosoft
All supported releases(tick)(tick)(error)

Prerequisites

(tick)An installation of any compatible release of CAST AIP (see table above)

Download and installation instructions

Please see: 

The latest release status of this extension can be seen when downloading it from the CAST Extend server.

CAST Transaction Configuration Center (TCC) Entry Points

In WCF ≥ 1.2.0 (Functional Release), a set of WCF Transaction Entry / End Points for use in the CAST Transaction Configuration Center is delivered in the extension via a .TCCSetup file. Therefore If you are using WCF ≥ 1.2.0 (Functional Release):

  • with CAST AIP ≥ 8.3.x, there is nothing for you to do: these WCF entry / end points will be automatically imported during the extension installation in the Free Definition node in the CAST Transaction Configuration Center.
  • with CAST AIP ≤ 8.2.x, you now need to manually import the file DotNet_WCF.TCCSetup to obtain your WCF entry / end points in the Free Definition section (see instructions below).

Manual import action for CAST AIP ≤ 8.2.x

Click here to expand...
  • Locate the .TCCSetup file in the extension folder: Configuration\TCC\DotNet_WCF.TCCSetup
  • In the CAST Transaction Configuration Center, ensure you have selected the Templates node:

  • This .TCCSetup file is to be imported into the CAST Transaction Calibration Center using either the:
    • File > Import Configuration menu option:

    • Or right clicking on the Template node and selecting Import Configuration:

  • The import of the DotNet_WCF.TCCSetup file will provide you with sample Transaction Entry / End points in the Free Definition node under Templates.
  • Now right click the "Default Entry Point WCF" item and select copy:

  • Paste the item into the equivalent node under the Application, for example, below we have copied it into the Application MEUDON:

  • Repeat the copy / paste process for the Transaction End Points.

Packaging, delivering and analyzing your source code

Once the extension is installed, no further configuration changes are required before you can package your source code and run an analysis. The process of packaging, delivering and analyzing your source code does not change in any way:

  • Package and deliver your application (that includes source code which uses WCF) in the exact same way as you always have. 
  • Analyze your delivered application source code in the CAST Management Studio in the exact same way as you always have - the source code which uses WCF will be detected and handled correctly.

What results can you expect?

Once the analysis/snapshot generation has completed, you can view the results in the normal manner. The following objects and links will be displayed in CAST Enlighten:

Objects

IconDescription

Configuration folder / Referred Service Endpoints folder

WCF Client Endpoint

WCF Service Endpoint

WCF Operation Method

WCF Service Contract

WCF Service

WCF Operation Method Delete

WCF Operation Method Get

WCF Operation Method Post

WCF Operation Method Put

This translates to the following in CAST Enlighten:

SourceLink typeTargetExampleRemarks
WCF ServicereferLink.NET class implementing the WCF Service

N/A
Proxy class method client sidecallLinkWCF Service method on service side (via client endpoint)

Links resolved by processing .svc file
WCF Client EndpointcallLinkWCF Service

Links resolved by wbs linker

Limitations

In this section we list the most significant functional limitations that may affect the analysis of applications using WCF:

  • If the configuration of WCF service is done through the code (endpoint configuration, service creation), this is not supported.
  • No support for advanced Annotations (IsOneWay for example)
  • No support for DataContracts
  • No support for Duplex
  • No support for Callback