WCF分布式开发步步为赢(2)自定义托管宿主WCF解决方案开发配置过程详解

上一节WCF分布式开发步步为赢(1):WCF分布式框架基础概念我们介绍了WCF服务的概念和通信框架模型,并给出了基于自定义托管服务的WCF程序的实现代码。考虑到WCF分布式开发项目中关于托管宿主服务配置和客户端添加引用。两个环节最容易出错。对于大部分想学习WCF分布式开发的人来说,成功开发、配置、部署第一个自己的WCF服务困难重重。很多资料都介绍了WCF的基本概念。但是对于实际的项目开发过程介绍粗略,给入门者带来诸多不便。今天我们就来补充一节WCF分布式开发一个完整解决方案的开发和配置过程。本节基本结构是:首先介绍【1】WCF服务解决方案的项目组成【2】WCF服务的开发和配置过程,【3】自定义宿主的开发和配置过程【4】客户端的服务引用和配置过程。【总结】算是为各位WCF分布式技术开发的爱好者,提供的一个开发参考。

【1】WCF服务解决方案的项目组成:

1.1】WCF服务:

通常来说,WCF服务由三个部分构成:

服务类:包含服务契约、操作契约和数据契约的定义和实现;

宿主:一种应用程序域和进程,服务将在该环境中运行;

终结点:由客户端用于访问服务。

我们这里的解决方案包括服务类项目、托管宿主、和简单的客户端程序,结构如图:

1.2】客户端应用程序:

上一节我们介绍了WCF的基本概念,WCF基本通信机制是基于SOAP消息,SOAP消息基于XML语言,因此WCF应用程序可与运行于各种上下文环境的其他进程进行通信,当然也支持跨系统、跨平台的应用程序之间的数据交互。基于WCF构建的分布式应用程序可与下列所有程序进行交互:

同一 Windows 计算机上不同进程中的WCF应用程序。

另一 Windows 计算机上的WCF应用程序。

基于其他技术构建的应用程序,如基于 Java 2 企业版 (J2EE) 构建的、支持标准 Web 服务的应用程序服务器。这些应用程序可以运行在 Windows 计算机上,也可以运行在其他操作系统(如 Sun Solaris、IBM 的 z/OS 或 Linux)上。

因此可以作为客户端的应用程序,并不限制其类型,只要可以解析基于XML的SOAP消息,都可以与WCF的服务端进行通信。.NET平台上我们可以创建控制台应用程序、WinForm、Windows服务、ASP.NET应用程序等,来访问和调用WCF服务。下面我们就来具体介绍自定义托管服务,WCF解决方案的开发配置的详细过程。

时间: 2024-12-03 18:25:16

WCF分布式开发步步为赢(2)自定义托管宿主WCF解决方案开发配置过程详解的相关文章

《嵌入式 Linux应用程序开发标准教程(第2版)》——2.2 Linux启动过程详解

2.2 Linux启动过程详解 嵌入式 Linux应用程序开发标准教程(第2版) 在了解了Linux的常见命令之后,下面详细讲解Linux的启动过程.Linux的启动过程包含了Linux工作原理的精髓,而且在嵌入式开发过程中非常需要这方面的知识. 2.2.1 概述 用户开机启动Linux过程如下: (1)当用户打开PC(intel CPU)的电源时,CPU将自动进入实模式,并从地址0xFFFF0000开始自动执行程序代码,这个地址通常是ROM-BIOS中的地址.这时BIOS进行开机自检,并按BI

WCF分布式开发步步为赢系列的(6):WCF服务契约继承与分解设计

上一节我们学习了WCF分布式开发步步为赢(5)服务契约与操作重载部分.今天我们来继续学习WCF服务契约继承和服务分解设计相关的知识点.WCF服务契约继承有何优势和缺点?实际项目里契约设计有什么原则和依据?面向对象的设计经验有何值得借鉴的地方?这里我们会一一给出详细的介绍.本文首先介绍的是WCF服务中契约继承的一些概念.例子代码分析,其次来讲解服务契约的设计问题.首先介绍的也是进行服务设计的必要性,服务设计的原则,示例代码分析.最后是全文的总结部分.结构如下:[1]OO面向对象设计原则,[2]服务

WCF分布式开发步步为赢系列的(4):WCF服务可靠性传输配置与编程开发

今天继续WCF分布式开发步步为赢系列的第4节:WCF服务可靠性传输配置与编程开发.这个章节,我们要介绍什么是WCF服务的可靠性传输,随便介绍网络协议的概念,Web Service为什么不支持可靠性传出,具体的WCF绑定协议和可靠性的关系,实现可靠性传输有什么方式,以及配置和开发的详细实现代码分析部分.[1]可靠性传输[2]配置方式实现可靠性传输[3]编程方式实现可靠性传输[4]编程实现必备有序传递[5]结果分析和总结. 下面进入正式的内容: [1]可靠性传输: [1.0]网络协议基础知识: 这里

Servlet开发入门(3) Servlet与表单|路径匹配详解

Servlet开发得需要JSP等技术的辅助,我们先来看一下Servlet与表单的应用. Servlet程序开发---一个实例 由于Servlet本身也存在着HttpServletRequest 和HttpServletResponse对象的声明,所以既可以使用Servlet接受用户所提交的内容 我们来以一个实例说明一下: 项目如下: 先做一个表单的页面 input.html <html> <head> <title>WEB开发</title> </he

【IOS-COCOS2D-X 游戏开发之五】游戏存储之COCOS2DX自带CCUSERDEFAULT类详解;

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2dx/653.html 本篇跟大家分享下Cocos2dX中的存储,其中也介绍些细节容易犯错的问题: 在Cocos2dX中提供了自带存储类:CCUserDefault  ,当然了这里Himi强调一点,如果你的数据量比较大,建议使用SQL存储比较适合,另外一点要注意的是,尽可能不要在Cocos2dX中使用与平台相关的ap

Windows 8云平台开发环境搭建过程详解

Windows Store应用是基于Windows 8操作系统的新一代Windows应用程序,其 开发平台以及运行模式和以往传统平台略有不同.为了帮助更多开发人员加入到 Windows Store应用开发行列,本篇将介绍如何在Windows Azure云平台搭建 Windows8应用开发环境,本篇介绍的方法适合未安装Windows8操作系统,使用Mac 或者Linux平台的开发人员参考阅读. 准备工作 在搭建环境前,大家需要在Windows Azure平台注册免费账号,注册完成后, 即可获得90

Android UI设计与开发教程 引导界面(一)ViewPager介绍和使用详解

做Android开发加起来差不多也有一年多的时间了,总是想写点自己在开发中的心得体会与大家一起交流分 享.共同进步,刚开始写也不知该如何下手,仔细想了一下,既然是刚开始写,那就从一个软件给人最直观的 感受--UI设计开始写起吧,循序渐进,娓娓道来.博主在这里和大家一起学习,希望能多多支持,话不多说 ,下面就开始讲解UI设计的第一篇. 在讲解如何实现引导界面的效果之前,我想先详细介绍一下 ViewPager类的使用和说明,因为这是开发引导界面最重要的类,没有之一. 一.ViewPager实现的效

【COCOA(MAC) APPLICATION 开发系列之四】动作编辑器(COCOS2DX)制作流程详解及附上响应鼠标滚轴事件、反转坐标系、导入/创建资源目录等知识点代码!

本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2dx/911.html 又要说好久没更新博文啦,咳咳-. 其实博文中对于游戏开发,从j2me-android-ios ,从Client端-Server端  ,从jbox-cocos2d-cocos2dx 基本都囊括了,当然还有一些iap 防破解.GCC.架构等等,以及现在编辑器开发的博文,基本上貌似游戏开发不缺少什么了

我的Java开发学习之旅------&amp;gt;Java双重检查锁定及单例模式详解(转)

简介:          所有的编程语言都有一些共用的习语.了解和使用一些习语很有用,程序员们花费宝贵的时间来创建.学习和实现这些习语.问题是,稍后经过证明,一些习语并不完全如其所声称的那样,或者仅仅是与描述的功能不符.在 Java 编程语言中,双重检查锁定就是这样的一个绝不应该使用的习语.在本文中,Peter Haggar 介绍了双重检查锁定习语的渊源,开发它的原因和它失效的原因.         单例创建模式是一个通用的编程习语.和多线程一起使用时,必需使用某种类型的同步.在努力创建更有效的