Professional Documents
Culture Documents
0
In the same week .NET 3.5 is released I get round to starting an article on .NET 3.0! So it'll only
be another year or so before I manage to get to 3.5. In fact it will be sooner but back to 3.0 for
the moment. Most of the classes in the .NET Framework version 2.0 are unchanged in 3.0/3.5.
The key differences for .NET 3.0 are new libraries that offer completely new sets of
functionality. There are four main components:
Windows Presentation Foundation (WPF) is an entirely new UI technology based on the
DirectX engine which facilitates the creation of vector based user interfaces rather than the
conventional Windows bitmap based UI. WPF, it is claimed, is the platform for the next
generation of interfaces facilitating UIs with built in capabilities to utilise this vector basis to
deliver scaling, animation media, styling and 3D visualisation to deliver true business benefits.
Windows Workflow (WF) is an engine for building applications with workflow. WF serves as
the kernel of workflow, handling threading, persistence and other plumbing tasks. WF brings a
consistent, component-oriented philosophy to workflow and is already at the core of Microsoft's
business in products like SharePoint.
Windows Communication Foundation (WCF) is a unified framework for machine to machine
and process to process communication. WCF brings together the capabilities of various
technologies into a common, integrated programming model. These technologies include Web
Services (traditional and latest standards compliant versions thereof), enterprise services,
remoting, and Microsoft Message Queue (MSMQ). WCF is designed to be the principal
Microsoft platform for systems utilising the increasingly popular Service Oriented Architecture
(SOA).
Windows CardSpace is the name for a new technology in the .NET Framework 3.0 that
simplifies and improves the safety of accessing resources and sharing personal information on
the Internet.
In this article I'll look in a little more theoretical detail at the first 3 of these 4 new components.
In later articles I hope to dig a little deeper into the practicalities of using these new technologies.
The main reference for this article is Professional VB 2005 with .NET 3.0 by Evjen et al.
3
WF integrates well into appplications including Windows Forms and ASp.NET applications. It
provides a means to modularise the workflow from those applications, to graphically design the
workflow in VS.NET for agreement with project stakeholders and the technology permits the
workflow to be changed relatively easily without requiring changes to the core application.
4
WS-*
WCF facilitates the utilisation of a framework of WS-* specifications which can be enabled to
allow for defined ways of dealing with security, reliability and transactions (with incomplete
notes):
Security
• WS-Security – supports credential exchange, message integrity and message confidentiality
• WS-SecureConversation
• WS-Trust
Reliability
• WS-ReliableMessaging
Trasnactions
• WS-AtomicTransaction
• WS-Coordination
Messaging
• SOAP
• WS-Addressing
• MTOM – Message Transmission Optimization Mechanism, the replacement for DIME
(Direct Internet Message Encapsulation) as ameans to transmit binary objects along with
a SOAP message
Metadata – allows definition of your interface
• WSDL
• WS-Policy – provides consumers with a specification of what is required to consume the
service
• WS-MetadataExchange
These use the SOAP header enabling messages to be self contained and not rely on the transport
protocol for anything but transmission of the message itself.
WCF can therefore make use of these specifications if the developer wishes.
If currently working in a .NET 2.0 environment you need to install .NET 3 and to build WCF
services directly in VS2005 you need to install the VS2005 extensions for .NET 3 (WCF and
WPF). If you are using a VS2008 Beta, or indeed the full product by the time you read this,
you’ll be ready to go already. You’ll then be able to add a WCF project.
5
I hope this whistlestop tour of 3 of the 4 main new elments in .NET 3.0 has been useful.
Hopefully there will be more practial articles to follow on DotNetJohn to build on this theoretical
information.