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.

转载于:https://www.cnblogs.com/chucklu/p/4643987.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/419741.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java apk安装路径_android apk安装过程源码解析

前言:前一篇博客分析了一下PackageManagerService是如何解析apk的以及我们如何解析未安装apk中的androidManifest.xml文件。解析完肯定要安装的,索性写一篇关于android系统是如何安装我们apk的流程分析。不过这里仅仅只分析java层面的代码,C层…

复杂度

一、引言 一个算法是由控制结构(顺序、分支和循环3种)和原操作(指固有数据类型的操作)构成的,则算法时间取决于两者的综合效果。为了便于比较同一问题的不同算法,通常的做法是:从算法中选取一种…

几个不错的素材站

w3cplus : http://www.w3cplus.com/JQUERY插件库 jq22.com 牛客 http://www.nowcoder.com/html/aboutusjQuery之家模板之家 http://www.cssmoban.com/动效不错的:http://www.templatemonster.com/demo/54933.htmlhttp://www.templatemonster.com/demo/54935.htmlht…

x3-02 java_Day13 -- Java流程控制02

1. 顺序结构Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。是任何一个算法都离不开的一种基本算法结构。2. 选择结构if单选择结构if双选择结构if多选择结构嵌套的if结构switch多选择结构1) if单选择结构语法:if(布尔…

css3 多列布局使用

css3的出现,解决了不少前端的问题,比如动画,圆角等; 这里总结一下css3 的多列布局; w3c上给出了很多属性; 我们一般用到column-count、column-gap、column-width这三个属性, 其中column-count和…

string容量JAVA_java的StringBuilder类的长度和容量有什么区别呢?

StringBuilder是使用char[] value;存储数据的Overridepublic int length() {return count;}AbstractStringBuilder(int capacity) {value new char[capacity];}长度表示的是字符的个数,容量表示的是可用于最新插入字符的存储量。例如:StringBuilder sbn…

一个TextView使用不同的颜色

一个TextView使用不同的颜色: textview中首先需要已经有内容了 public static void ColorFormatTextView(TextView tv,int color,String textStr){if (TextUtils.isEmpty(textStr) || tv null|| TextUtils.isEmpty(tv.getText())) {return;}String showString tv.…

java集合的某项相加_java8实现list集合中按照某一个值相加求和,平均值等操作代码...

集合: List user = new User(); user .stream().collect(Collectors.summingInt(User::getAge)) 参数类型: summarizingDouble 统计数据(double)状态, 其中包括count min max sum和平均值 summarizingInt 统计数据(int)状态, 其中包括count min max sum和平均值 summarizingLo…

SAP RFC 获取BDC 消息文本的实现

SAP RFC 获取BDC 消息文本的实现 最近做RFC时 ,有调用一个BDC 用于 信息录入 调试程序时,单纯的处理正确、处理异常不能满足,希望获取具体的类似GUI上的提示消息 消息文本该如何获取呢? messtab内容: 初步猜测 可能是…

java script数据类型_javascript 六种数据类型

js的数据类型和常见隐式转化逻辑。一、六种数据类型原始类型(基本类型):按值访问,可以操作保存在变量中实际的值。原始类型汇总中null和undefined比较特殊。引用类型:引用类型的值是保存在内存中的对象。* 与其他语言不同的是,Jav…

RatingBar的自定义

RatingBar的实现其实是很简单的&#xff0c;只要在xml布局文件中写就行了 范例&#xff1a; 在主布局文件中&#xff0c;只需要写<RatingBar/>即可 main.xml 1 <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"2 xmlns:tools&q…

python中什么最重要_Python 3中被忽视了的三大重要功能

全文共2201字&#xff0c;预计学习时长6分钟图源&#xff1a;unsplashPython 3上线已有一段时间&#xff0c;大多数开发人员(特别是那些首次编程的人)已经在使用它了。不过&#xff0c;你确定已经对Python 3研究透彻了吗&#xff1f;事实上&#xff0c;其中还有许多新功能对大多…

Java基础总结(一)

1. 面向对象的特征面向对象的特征包括抽象、封装、继承和多态。 抽象就是忽略一个主题中与当前目标无关的某些方面&#xff0c;以便更加充分的注意到与当前目标有关的方面。抽象并不打算了解全部的问题&#xff0c;而只是其中的一部分&#xff0c;暂时不用考虑细节。抽象包括两…

java 2分代复制垃圾回收_Java对象的后事处理——垃圾回收(二)

1 先谈Finalize()finalize()能做的所有工作&#xff0c;使用try-finally或者其他方式都可以做得更好、更及时&#xff0c;所以笔者建议大家完全可以忘掉Java语言中有这个方法的存在。——《深入理解JVM》finalize()方法确实可以实现一次对象的自救&#xff0c;但是其不确定性和…

前端学习(1555):ng-app指令

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>ng-app指令</title> </head> <!-- 需…

前端学习(1556):ng-blnd指令

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>ng-app指令</title> </head> <!-- 需…