Hello Indigo
Windows Communication Foundation (WCF),formerly code-named “Indigo,” is Microsoft’s platform for Service-Oriented Architecture (SOA),designed for building distributed service-oriented applications for the enterprise and the web.
WCF was released with Windows Vista as part of the .NET Framework 3.0 (.NET 3.0) which includes four core technologies:
Windows Presentation Foundation (WPF),Windows Workflow Foundation (WF),Windows Communication Foundation (WCF),and Windows CardSpace.
As Figure 1-1 illustrates,.NET 3.0 relies on the .NET Framework 2.0 (.NET 2.0) and is supported on Windows XP,Windows Vista,Windows Server 2003, and Windows Server 2008 platforms.

Figure 1-1 Platform support for WCF
Why release yet another technology for building distributed applications? Unlike its predecessors,WCF is a truly service-oriented,loosely coupled,and interoperable platform.
It simplifies service-oriented system design by removing the design dependencies that traditionally exist between how you access business functionality and the actual implementation of that business functionality.
WCF promotes loose coupling not only between services and the functionality they expose,but also for choice of protocol,message encoding formats,and hosting environment.
For example,services can be accessed over a variety of supported protocols,including named pipes,TCP,HTTP,and MSMQ.
WCF also supports all of the core and emerging web service standards,which makes it a highly interoperable platform.
Messages can always be represented in a format consistent with a set of well-adopted standards to communicate with other platforms.
Besides these modern characteristics,what’s even more interesting is that you can now choose a single communication stack to gain access to the system services necessary to build a distributed system.
WCF unifies the disparate programming paradigms you have previously used on the Windows platform to achieve similar goals—namely .NET Remoting,ASP.NET Web Services (ASMX),and Enterprise Services.
WCF provides all of the plumbing for security,transactions,and reliable messaging over any protocol.
Only Enterprise Services came close to providing all of these features in a single stack,but your component design was coupled to the technology and limited to TCP communication (thus, not interoperable).
This chapter will be your introduction to the programming model of WCF.
I’ll start by reviewing the principles of a Service Oriented Architecture and how WCF supports those principles.
I’ll also describe some practical deployment scenarios for WCF in distributed enterprise systems and
then summarize some of the fundamental WCF concepts that will be discussed first in this chapter and then elaborated on throughout this book.
After introducing core WCF concepts,I’ll walk you through labs that exercise certain techniques and features.
Instead of boring you with a bunch of “Hello World”examples,I plan to kick things up just a notch in this introductory chapter by enforcing good practices from the start while I teach you core concepts.
Each of the labs you complete in this chapter will become successively more complex,and each will expose a new layer of detail.
After each lab I will explain the relevant techniques and features you applied,discuss their relevance,and comment on recommended practices.
The labs in this chapter will cover the following topics:
• Manually creating and consuming WCF services without the help of Visual Studio templates and related tools. This will provide you with a picture of the bare necessities you need to create,host,and consume a WCF service so that you
understand the underlying programming model.
• Creating WCF services using various Visual Studio project and service templates, leveraging configuration tools, and generating code to consume services.
• Approaches to assembly allocation and service hosting over various protocols.
• The importance of service metadata for publishing and consuming services.
By the end of this chapter you will be familiar with many core concepts including service contracts,endpoints,bindings,behaviors,hosting,metadata,channels,and proxies.
Of course,throughout this book,the same concepts as well as additional ones will be discussed at length as you dive more deeply into specific WCF features.
Hello Indigo的更多相关文章
- eclipse Juno Indigo Helios Galileo 版本
Galileo Ganymede Europa 这些名字代表eclipse不同的版本 2001年11月7日 ,Eclipse 1.0发布 半年之后,2002年6月27日Eclipse进入了2.0时代 ...
- eclipse Juno Indigo Helios Galileo这几种版本的意思
Eclipse 3.1 版本代号 IO [木卫1,伊奥] Eclipse 3.2, 30-06-2006, Callisto projects, 版本代号 Callisto [木卫四,卡里斯托 ] ...
- Ubuntu14.04安装和配置ROS Indigo(一)
安装ROS 配置Ubuntu的软件源 配置Ubuntu要求允许接受restricted.universe和multiverse的软件源,可以根据下面的链接配置: https://help.ubuntu ...
- ubuntu14.04 and ros indigo install kinect driver--16
摘要: 原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/ 今日多次测设ros indigo install kinect driver ,提示各种失败,然 ...
- INDIGO STUDIO神器!快速创建WEB、移动应用的交互原型工具【转】
转自:http://www.uisdc.com/indigo-studio-wireframe-interactive-uis 这套最新的设计工具出自Indigo工作室,永久免费,有mac版本和WIN ...
- eclipse Juno Indigo Helios Galileo这几种版本的意思(转)
Galileo Ganymede Europa 这些名字代表eclipse不同的版本 2001年11月7日 ,Eclipse 1.0发布 半年之后,2002年6月27日Eclipse进入了2.0 ...
- ROS Indigo在ubuntu1404上的安装方法
安装配置方法参照 http://wiki.ros.org/indigo/Installation/Ubuntu 以下操作需要保证虚拟机能够正常连接网络. 1.更换源镜像: 将源设置为国内源,我选择的 ...
- 奥比中光Orbbec Astra Pro RGBD 3D视觉传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示
Orbbec Astra Pro传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示 这款摄像头使用uvc输入彩色信息,需要libuvc和libuvc_ros这样才能在R ...
- ROS(indigo) 安装和使用更新版本的Gazebo----3,4,5,6,7 附:中国机器人大赛中型组仿真比赛说明
ROS(indigo) 安装和使用更新版本的Gazebo,本文以7为例. Gazebo7支持更多新的功能,如果使用下面命令安装ROS(indigo): ~$ sudo apt-get install ...
随机推荐
- cocos2d-x实战 C++卷 学习笔记--第7章 动作、特效(一)
前言: 介绍cocos2d-x中的动作.特效. 动作: 动作(action)包括基本动作和基本动作的组合,这些基本动作有缩放.移动.旋转等,而且这些动作变化的速度也可以设定. 动作类是 Action. ...
- cocos2d-x实战 C++卷 学习笔记--第4章 字符串 __String类
前言: <cocos2d-x实战C++卷>学习笔记.(cocos2d-x 是3.0版本) 介绍 cocos2d-x 通用的字符串类 __String . 使用cocos2d::__Str ...
- iOS App Transport Security
网络请求提示:Application Transport Security has blocked a cleartext HTTP (http://) resource load since it ...
- 04_线程的创建和启动_使用Callable和Future的方式
[简述] 从java5开始,java提供了Callable接口,这个接口可以是Runnable接口的增强版, Callable接口提供了一个call()方法作为线程执行体,call()方法比run() ...
- ASCII Table/ASCII表
ASCII Table/ASCII表 参考: 1.Table of ASCII Characters
- WTL 中CComboBoxEx显示不了的问题
在使用WTL的CComboBoxEx时,InsertItem之后,运行程序,ComboBox显不了问题,其原因如下: I guess you want to place combo box to di ...
- File Operation using SHFileOperation
SHFILEOPSTRUCT Original link: http://winapi.freetechsecrets.com/win32/WIN32SHFILEOPSTRUCT.htm Refere ...
- leetcode problem 37 -- Sudoku Solver
解决数独 Write a program to solve a Sudoku puzzle by filling the empty cells. Empty cells are indicated ...
- C# IO操作磁盘上的txt
using System.IO; //写入并导出到磁盘 StreamWriter sw = new StreamWriter(@"H:\text.txt"); sw.WriteLi ...
- Cassandra1.2文档学习(8)—— 数据管理
数据参考:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_manage ...