关于WCF的EndPoint绑定问题

nk_maquan 2010-06-07 10:58:22
在WCF中,一个service可以有多个EndPoint。那多个service能不能绑定到同一个端口呢(只是端口相同,但EndPoint使用不同的相对地址),我在本机实际试验了一下是可以的,但是搞不清楚service, endpoint和基地址之间的关系,希望高手能帮忙解释一下。下面是我试验时使用的配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceCalculatorInt">
<serviceMetadata httpGetEnabled="true" httpGetUrl="http://localhost:8080/ServiceCaculatorInt/metadata" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="ServiceCalculatorReal">
<serviceMetadata httpGetEnabled="true" httpGetUrl="http://localhost:8080/ServiceCalculatorReal/metadata" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="ServiceCalculatorInt"
name="TestWCF.ServiceCalculatorInt">
<endpoint address="http://localhost:8080/ServiceCalculatorInt/ServiceCalculatorInt" binding="wsHttpBinding" contract="TestWCF.ICalculatorInt">
</endpoint>
<endpoint address="http://localhost:8080/ServiceCaculatorInt/mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
<service behaviorConfiguration="ServiceCalculatorReal"
name="TestWCF.ServiceCalculatorReal">
<endpoint address="http://localhost:8080/ServiceCalculatorReal/ServiceCalculatorReal" binding="wsHttpBinding" contract="TestWCF.ICalculatorReal">
</endpoint>
<endpoint address="http://localhost:8080/ServiceCalculatorReal/mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
</system.serviceModel>
</configuration>
...全文
389 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuai13869896140 2010-06-08
  • 打赏
  • 举报
回复
呵呵,wcf还没有学到,不过在关注```
mars199 2010-06-07
  • 打赏
  • 举报
回复
看不懂,帮顶
皇城龙三 2010-06-07
  • 打赏
  • 举报
回复
[WCF] Endpoint
每一个 WCF 服务都会关系到地址(Address)、绑定(Binding)和契约(Contract),而 WCF 则通过 Endpoint 将 ABC 三个方面联系在一起。每一个 Endpoint 都必须包括 ABC 三个方面,缺一不可,而 host 进程会提供 Endpoint 供客户端调用。每个 Endpoint 都对应一个唯一地址,但是多个 Endpoint 可以共享相同的绑定和契约,每个服务又可以提供多个 Endpoint 供客户端掉用。



使用配置文件

再次体现 Microsoft 的傻瓜式编程。唯一值得注意的地方是在 service 节点中添加了 behaviorConfiguration 属性。


<?xml version="1.0"?>

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.serviceModel>
<services>
<!--<service name="MyService" behaviorConfiguration="returnFaults">
<endpoint contract="IMyService" binding="wsHttpBinding"/>
</service>-->
<service name="Anrs.Service.AnrsService" behaviorConfiguration="returnFaults">
<endpoint contract = "Anrs.Service.IAnrsServiceContract1"
binding = "wsHttpBinding"
address = "http://localhost:4021/AnrsServiceByIIS/AnrsService/" />
</service>
</services>

<behaviors>
<serviceBehaviors>
<behavior name="returnFaults" >
<serviceMetadata httpGetEnabled="true"></serviceMetadata>
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>

<system.web>
<compilation debug="true"/>
</system.web>
</configuration>


使用配置文件的好处自不待言,无论是修改了服务的地址、绑定还是契约,都不需要重新编译甚至部署。配置完成后,就能在浏览器中看到如下的画面了。






编程控制 Endpoint

相对于配置文件的简单,编程控制 Endpoint 也不会多几行代码。下面的代码就相当于上面的配置文档。

using System;
using System.ServiceModel;
using System.ServiceModel.Channels;

namespace Anrs.Service
{
class Program
{
static void Main(string[] args)
{
ServiceHost sh = new ServiceHost(typeof(AnrsService));
Binding wsHttpBinding = new WSHttpBinding();

sh.AddServiceEndpoint(typeof(IAnrsServiceContract1),
wsHttpBinding,
new Uri("http://localhost:8086/AnrsService/"));
sh.Open();

Console.Write("Press any key to exit");
Console.ReadLine();

sh.Close();
}
}
}
nk_maquan 2010-06-07
  • 打赏
  • 举报
回复
顶一顶,请知道的解释一下
nk_maquan 2010-06-07
  • 打赏
  • 举报
回复
自己顶顶
.Net.Framework3.5开发技术详解 完整程度:99%完整 少最后8页 清晰度:一般 格式:PDF 总页数:402 内容简介 《.NET Framework3.5开发技术详解》全面讲解了.NET Framework 3.5开发中各方面的技术要点,共分19章。《.NET Framework3.5开发技术详解》没有对各个功能的工作原理进行深入的揭示,而是采用“知识进述”+“代码示例”的方式,让读者可以快速体验并掌握.NET Framework 3.5的开发方法。 《.NET Framework3.5开发技术详解》适合从事各种.NET程序开发的人员阅读。通过不同层次的例子,相信可以让读者理解、掌握.NET程序开发,特别是关于WPF、WCF和WF这3种重要框架的应用所要掌握的知识。 目录 第1章 .NETFramework3.5 简介 1.1.NETFramework3.5 在.NET技术体系中的位置 1.2.NET3.5 各部分的功能 1.3.NET3.5 的组件 1.3.1 WindowsPresentaionFoundation(WPF) 1.3.2 WindowsCommunicationFoundation(WCF) 1.3.3 WorkflowFoundation(WF) 1.4 搭建.NET3.5 的开发环境 1.4.1 在WindowsXP/2003/Vista上搭建开发环境 1.4.2 相关工具 第2章 .NET3.5 的新功能 2.1.NET3.5 概要 2.2 新的.NET基础类型 2.3 C#语言的强化 2.3.1 C#基本语法增强 2.3.2 LINQ(集成语言查询) 第3章 WindowsPresentationFoundation基础知识 3.1 WindowsPresentationFoundation(WPF)的概念 3.2 XAML的概念 3.2.1 命名空间 3.2.2 代码后置文件 3.2.3 调用.NET类库中的类来定义对象 3.2.4 属性 3.3 WPF的结构和相关的类库 3.4 WPF应用程序的类型 3.4.1 传统类型的视窗程序 3.5 创建第一个WPF程序 第4章 WPF程序的布局 4.1 布局的基础知识 4.2 StackPanel容器 4.3 DockPanel容器 4.4 Grid容器 4.4.1 表格的高度和宽度 4.4.2 ColumnSpan和RowSpan 4.4.3 Grid的SharedSizeGroup 4.5 Canvas容器 4.6 文档布局 4.6.1 WrapPanel 4.6.2 TextBlock 4.6.3 FlowDocument 4.7 其他容器 4.8 视图控制 4.9 自定义布局 第5章 WPF的控件 5.1 控件模型 5.2 WPF的控件树 5.3 路由事件 5.4 从属属性(DependencyProperty) 5.5 处理交互行为 5.6 基本控件的使用 5.6.1 Button控件 5.6.2 TextBox类控件 5.6.3 列表控件 5.6.4 Menu控件 5.6.5 包容式控件 5.6.6 Label和TextBlock 5.6.7 其他控件 第6章 资源和数据绑定 6.1 在WPF中定义资源 6.1.1 WPF中的嵌入式资源 6.1.2 定义逻辑资源 6.2 使用资源 6.3 数据绑定基础 6.4 集合的绑定 6.5 DataProvider 6.6 高级数据绑定操作 6.7 使用CollectionViewSource进行排序和过滤 第7章 让WPF程序支持样式和主题 7.1 样式基础 7.1.1 WPF样式的定义 7.1.2 样式的作用 7.1.3 样式的作用范围 7.2 内联样式 7.3 命名样式 7.4 样式触发器 7.5 控件模板 7.6 主题 第8章 WPF的绘图功能 8.1 2D图形基础 8.2 2D几何图形 8.3 画刷和画笔 8.3.1 画刷 8.3.2 画笔 8.4 2D图形变换(Transform) 8.4.1 平移变换 8.4.2 缩放变换 8.4.3 旋转变换 8.4.4 斜移变换 8.4.5 矩阵变换 8.4.6 变换组(TransformGroup) 8.5 2D图形特效 8.6 3D图形基础 8.6.1 计算机图形学基础 8.6.2 WPF的3D类型 8.7 3D变换 8.8 WPF的动画支持 8.8.1 Animation对象 8.8.2 第一个动画 第9章 WPF的多媒体 9.1 对视频和音频的支持 9.1.1 视频支持 9.1.2 音频支持 9.2 语音功能 第10章 WPF高级技术 10.1 WPF自定义控件 10.1.1 编写控件的基础知识 10.1.2 开始编写控件 10.1.3 编写CustomControl控件 10.2 WPF的互操作性 10.2.1 在WPF中使用Winform控件 10.2.2 在WInform程序中使用WPF控件 10.3 WPF的异步模型 10.4 WPF对自动化程序的支持 10.4.1 Automation树 10.4.2 控件的访问方式 第11章 WindowsCommunicationFoundation(WCF)基础 11.1 面向服务编程模型(框架) 11.1.1 什么是SOA 11.1.2 为什么要使用SOA 11.2 WCF是什么 11.3 WCF的结构 11.4 WCF基础 第12章 WCF中的契约 12.1 服务契约和操作契约 12.2 数据契约(DataContract) 12.3 错误契约(FaultContract) 12.4 创建WCF服务 12.5 编写WCF客户端 12.6 配置WCF程序 12.6.1 服务端配置 12.6.2 客户端配置 12.6.3 配置工具 第13章 WCF中的消息交换 13.1 与通信有关的概念 13.1.1 Address(地址) 13.1.2 Bindings(通信绑定) 13.1.3 Contracts(契约) 13.1.4 EndPoint 13.2 远程对象的传递 13.3 大对象的传递 13.4 错误处理 13.5 会话管理 13.6 双向通信 13.7 WCF的消息编码 13.8 基于队列的消息交换 13.9 点对点网络(Peer-To-PeerNetwork) 第14章 并发管理 14.1 服务器实例行为管理 14.2 并发管理 14.3 同步上下文 14.4 回调的同步设置和异步调用 第15章 WCF的事务支持 15.1 事务概要 15.2 WCF中的事务 15.3 创建支持事务的服务 第16章 WCF的安全解决方案 16.1 认证和授权 16.1.1 认证 16.1.2 授权 16.2 安全传输 16.2.1 传输的安全性 16.2.2 消息安全 16.3 安全策略 第17章 WCF的扩展性 17.1 服务行为的扩展 17.1.1 自定义分发器特性 17.2 自定义通道 17.3 自定义元数据 17.3.1 元数据的基本知识 17.3.2 扩展元数据系统 17.4 自定义序列化 第18章 WCF的运行环境 18.1 在IIS上启用WCF服务 18.2 在.NET程序中运行WCF服务 18.3 在Windows服务程序中运行WCF服务 第19章 工作流(WorkFlow) 19.1 工作流(WF)简介 19.1.1 工作流的概念 19.1.2 WindowsWorkFlowFoundation 19.2 Activity(活动) 19.3 WF运行时 19.4 基于状态机的工作流 19.5 工作流的持久化 19.6 工作流的XAML表示
第一部分 .NET框架(0.5天) 1. 了解.NET之前诞生前的世界 2. Microsoft .NET 框架结构 3. Microsoft .NET 框架结构 4. .NET Framework 概述 5. .Net Framework 2.0/ 3.0/3.5 6. 公共语言运行库 7. 公共语言运行库的优点 8. NET Framework 类库概述 9. NET Framework 类库结构 10. NET Framework 类库功能 11. 公共语言运行时 CLR 12. CLR 和 MSIL(Microsoft 中间语言) 13. 应用程序执行过程 14. 了解MSIL 15. MSIL+元数据 16. 多语言支持和语言互操作的基础 -CLS 和 CTS公共语言规范 17. 应用程序域 18. 程序集的一些基本概念 19. C# 语言的优点 20. 认识我们的开发利器visual studio 2008 Team 第二部分 WindowsForm(2天) (1) C#基本编程知识什么是关键字 (2) C#的合法语句 (3) 变量的声明变量声明格式 (4) 变量类型数值类型:int;float等 (5) 快速了解快速了解对话框控件应用 (6) 快速了解第三方控件的应用 (7) 委托和事件 (8) 定义委托 (9) 实例化委托 (10) 调用委托 (11) 异步委托 (12) 异步委托的定义 (13) 异步委托的四种调用方法 (14) 什么是事件 (15) 定义事件 (16) 订阅事件 (17) 触发事件 (18) 引发事件 (19) 深入了解事件Event (20) 观察者模式 (21) Obseve模式结构 (22) Observer 示例程序演示 (23) Observer 与事件 (24) 自定义控件和用户控件C#控件 (25) 事件驱动开发使用 (26) GDI+图形编程 第三部分 Ado.NET(2天) (1) ADO.NET结构 (2) ADO.NET工作原理 (3) 数据提供者(Data Provider) (4) Data Provider 优点 (5) 数据集(DataSet) (6) DataSet结构 (7) DataSet优点 (8) ADO.NET 中对象模型 (9) 数据库相关控件的使用DataGridView控件 (10) DataGridView-显示数据基本方法 (11) DataGridView使用动态编程显示数据 (12) DataGridView保存修改后的数据关键知识 (13) 事务处理 (14) Sql 基本语法练习 (15) 什么是存储过程 (16) SQL注入攻击介绍 (17) 遭受SQL注入式攻击的基本原理 (18) 使用参数化查询提高数据安全 (19) 数据安全总结 (20) IDE环境整合使用EXPRESS 数据库开发应用 第四部分 WPF开发技术(1.5天) (1) 什么是WPF (2) WPF应用程序 (3) 建立第一WPF应用程序项目 (4) WPF的重要技术XAML (5) XAML语法 (6) 学习Expression Blend 专业的WPF设计工具 (7) 使用EB WPF客户端实战 (8) 刨析XAML (9) XAML语法 (10) 认识WPF中的主要控件 (11) 动画什么 (12) 动画中的3个重要概念 (13) 使用时间线和故事板 (14) 动画使用触发器 (15) 数据绑定Binding (16) 动画开发实战 第五部分 WCF开发技术(1.5天) (1) 从SOA说起S-Server (2) 什么是WCF Windows Communication Foundation (3) WCF-各种分布式技术统一江湖 (4) 实例了解什么是WCF (5) WCF通信模型 (6) 协定,契约,合同 (7) Contract分类协定分类 (8) 4个最主要组件WCF (9) Demo-天气预报服务功能设计 (10) WCF中的基本概念-Endpoint 终节点 (11) WCF中的基本概念-ABC (12) WCF中的基本概念-Endpoint与ABC包含关系 (13) 特殊的Endpoint-Mex节点回忆SOA的特点 (14) Binding绑定的作用 (15) Binding绑定协议的选择 (16) Address地址的作用 (17) 认识主要的协议 (18) WCF通信模型 (19) 托管与宿主托管 (20) 消息模式 (21) 消息模式-单向模式 (22) 请求/答复请求/答复模式 (23) 双工模式 (24) WCF Behavior是什么 (25) 主要的服务行为实例管理 (26) WCF 安全控制 第六部分 WPF+WCF项目实战(1.5天) (1) 项目开发-聊天室基于WPF+WCF的聊天室 (2) 需求分析和功能设计 (3) 聊天室系统详细设计 (4) 聊天室契约设计 (5) 聊天室实现: 宿主服务器 (6) 聊天室实现客户端 (7) WPF实现客户端开发
培训课件内容: 第一部分 .NET框架(0.5天) 第二部分 Winform编程(2天) 第三部分 Ado.NET(2天) 第四部分 WPF技术(1.5天) 第五部分 WCF开发技术(1.5天) 第六部分-项目实战(1.5天) 详细内容: 第一部分 .NET框架(0.5天) 1. 了解.NET之前诞生前的世界 2. Microsoft .NET 框架结构 3. Microsoft .NET 框架结构 4. .NET Framework 概述 5. .Net Framework 2.0/ 3.0/3.5 6. 公共语言运行库 7. 公共语言运行库的优点 8. NET Framework 类库概述 9. NET Framework 类库结构 10. NET Framework 类库功能 11. 公共语言运行时 CLR 12. CLR 和 MSIL(Microsoft 中间语言) 13. 应用程序执行过程 14. 了解MSIL 15. MSIL+元数据 16. 多语言支持和语言互操作的基础 -CLS 和 CTS公共语言规范 17. 应用程序域 18. 程序集的一些基本概念 19. C# 语言的优点 20. 认识我们的开发利器visual studio 2008 Team 第二部分 WindowsForm(2天) (1) C#基本编程知识什么是关键字 (2) C#的合法语句 (3) 变量的声明变量声明格式 (4) 变量类型数值类型:int;float等 (5) 快速了解快速了解对话框控件应用 (6) 快速了解第三方控件的应用 (7) 委托和事件 (8) 定义委托 (9) 实例化委托 (10) 调用委托 (11) 异步委托 (12) 异步委托的定义 (13) 异步委托的四种调用方法 (14) 什么是事件 (15) 定义事件 (16) 订阅事件 (17) 触发事件 (18) 引发事件 (19) 深入了解事件Event (20) 观察者模式 (21) Obseve模式结构 (22) Observer 示例程序演示 (23) Observer 与事件 (24) 自定义控件和用户控件C#控件 (25) 事件驱动开发使用 (26) GDI+图形编程 第三部分 Ado.NET(2天) (1) ADO.NET结构 (2) ADO.NET工作原理 (3) 数据提供者(Data Provider) (4) Data Provider 优点 (5) 数据集(DataSet) (6) DataSet结构 (7) DataSet优点 (8) ADO.NET 中对象模型 (9) 数据库相关控件的使用DataGridView控件 (10) DataGridView-显示数据基本方法 (11) DataGridView使用动态编程显示数据 (12) DataGridView保存修改后的数据关键知识 (13) 事务处理 (14) Sql 基本语法练习 (15) 什么是存储过程 (16) SQL注入攻击介绍 (17) 遭受SQL注入式攻击的基本原理 (18) 使用参数化查询提高数据安全 (19) 数据安全总结 (20) IDE环境整合使用EXPRESS 数据库开发应用 第四部分 WPF开发技术(1.5天) (1) 什么是WPF (2) WPF应用程序 (3) 建立第一WPF应用程序项目 (4) WPF的重要技术XAML (5) XAML语法 (6) 学习Expression Blend 专业的WPF设计工具 (7) 使用EB WPF客户端实战 (8) 刨析XAML (9) XAML语法 (10) 认识WPF中的主要控件 (11) 动画什么 (12) 动画中的3个重要概念 (13) 使用时间线和故事板 (14) 动画使用触发器 (15) 数据绑定Binding (16) 动画开发实战 第五部分 WCF开发技术(1.5天) (1) 从SOA说起S-Server (2) 什么是WCF Windows Communication Foundation (3) WCF-各种分布式技术统一江湖 (4) 实例了解什么是WCF (5) WCF通信模型 (6) 协定,契约,合同 (7) Contract分类协定分类 (8) 4个最主要组件WCF (9) Demo-天气预报服务功能设计 (10) WCF中的基本概念-Endpoint 终节点 (11) WCF中的基本概念-ABC (12) WCF中的基本概念-Endpoint与ABC包含关系 (13) 特殊的Endpoint-Mex节点回忆SOA的特点 (14) Binding绑定的作用 (15) Binding绑定协议的选择 (16) Address地址的作用 (17) 认识主要的协议 (18) WCF通信模型 (19) 托管与宿主托管 (20) 消息模式 (21) 消息模式-单向模式 (22) 请求/答复请求/答复模式 (23) 双工模式 (24) WCF Behavior是什么 (25) 主要的服务行为实例管理 (26) WCF 安全控制 第六部分 WPF+WCF项目实战(1.5天) (1) 项目开发-聊天室基于WPF+WCF的聊天室 (2) 需求分析和功能设计 (3) 聊天室系统详细设计 (4) 聊天室契约设计 (5) 聊天室实现: 宿主服务器 (6) 聊天室实现客户端 (7) WPF实现客户端开发
作为初学入门选择方向的好教材 许多技术人员在面对.NET Framework 3.0/3.5大量的新知识、新技术的时候感到彷徨,对自己现有的技术知识是否过时会产生疑问,对新技术会产生抵触的情绪,其实,只要能学习到真正代表业界趋势的技术,花不太多的时间掌握新技术,乐趣就会随之产生。编写本书的一个目的就是要让读者认识到.NET 3.5相关的新知识都是基于现有技术的,体会、掌握并应用这些新技术并不是难事。 本书全面讲解了.NET Framework 3.5开发中各方面的技术要点,共分19章。本书没有对各个功能的工作原理进行深入的揭示,而是采用“知识进述”+“代码示例”的方式,让读者可以快速体验并掌握.NETFramework 3.5的开发方法。 本书适合从事各利.NET程序开发的人员阅读。通过不同层次的例子,相信可以让读者理解、掌握,NET程序开发,特别是关于WPF、wcF和WF这3种重要框架的应用所要掌握的知识。 第1章 .NETFramework3.5简介 1 中文名: .NETFramework3.5开发技术详解 作者: 王毅.图书分类: 计算机与网络 资源格式: PDF 版本: 2009 出版社: 人民邮电出版社.书号: 9787115190918.发行时间: 2009年 地区: 大陆 语言: 简体中文 简介: 1.1 .NETFramework3.5在.NET技术体系中的位置 1 1.2 .NET3.5各部分的功能 2 1.3 .NET3.5的组件 3 1.3.1 WindowsPresentaionFoundation(WPF) 3 1.3.2 WindowsCommunicationFoundation(WCF) 5 1.3.3 WorkflowFoundation(WF) 6 1.4 搭建.NET3.5的开发环境 6 1.4.1 在WindowsXP/2003/Vista上搭建开发环境 6 1.4.2 相关工具 9 第2章 .NET3.5的新功能 12 2.1 .NET3.5概要 12 2.2 新的.NET基础类型 12 2.3 C#语言的强化 14 2.3.1 C#基本语法增强 14 2.3.2 LINQ(集成语言查询) 16 第3章 WindowsPresentationFoundation基础知识 34 3.1 WindowsPresentationFoundation(WPF)的概念 34 3.2 XAML的概念 35 3.2.1 命名空间 36 3.2.2 代码后置文件 37 3.2.3 调用.NET类库中的类来定义对象 37 3.2.4 属性 38 3.3 WPF的结构和相关的类库 39 3.4 WPF应用程序的类型 44 3.4.1 传统类型的视窗程序 44 3.5 创建第一个WPF程序 49 第4章 WPF程序的布局 59 4.1 布局的基础知识 59 4.2 StackPanel容器 61 4.3 DockPanel容器 65 4.4 Grid容器 67 4.4.1 表格的高度和宽度 69 4.4.2 ColumnSpan和RowSpan 70 4.4.3 Grid的SharedSizeGroup 71 4.5 Canvas容器 72 4.6 文档布局 74 4.6.1 WrapPanel 74 4.6.2 TextBlock 75 4.6.3 FlowDocument 78 4.7 其他容器 83 4.8 视图控制 84 4.9 自定义布局 87 第5章 WPF的控件 91 5.1 控件模型 91 5.2 WPF的控件树 92 5.3 路由事件 95 5.4 从属属性(DependencyProperty) 97 5.5 处理交互行为 102 5.6 基本控件的使用 106 5.6.1 Button控件 106 5.6.2 TextBox类控件 109 5.6.3 列表控件 113 5.6.4 Menu控件 118 5.6.5 包容式控件 121 5.6.6 Label和TextBlock 126 5.6.7 其他控件 127 第6章 资源和数据绑定 134 6.1 在WPF中定义资源 134 6.1.1 WPF中的嵌入式资源 134 6.1.2 定义逻辑资源 135 6.2 使用资源 139 6.3 数据绑定基础 142 6.4 集合的绑定 151 6.5 DataProvider 157 6.6 高级数据绑定操作 165 6.7 使用CollectionViewSource进行排序和过滤 167 第7章 让WPF程序支持样式和主题 169 7.1 样式基础 169 7.1.1 WPF样式的定义 169 7.1.2 样式的作用 170 7.1.3 样式的作用范围 171 7.2 内联样式 172 7.3 命名样式 172 7.4 样式触发器 174 7.5 控件模板 180 7.6 主题 182 第8章 WPF的绘图功能 189 8.1 2D图形基础 189 8.2 2D几何图形 190 8.3 画刷和画笔 197 8.3.1 画刷 197 8.3.2 画笔 204 8.4 2D图形变换(Transform) 205 8.4.1 平移变换 205 8.4.2 缩放变换 206 8.4.3 旋转变换 206 8.4.4 斜移变换 207 8.4.5 矩阵变换 207 8.4.6 变换组(TransformGroup) 210 8.5 2D图形特效 210 8.6 3D图形基础 213 8.6.1 计算机图形学基础 213 8.6.2 WPF的3D类型 215 8.7 3D变换 218 8.8 WPF的动画支持 221 8.8.1 Animation对象 222 8.8.2 第一个动画 223 第9章 WPF的多媒体 230 9.1 对视频和音频的支持 230 9.1.1 视频支持 230 9.1.2 音频支持 235 9.2 语音功能 238 第10章 WPF高级技术 241 10.1 WPF自定义控件 241 10.1.1 编写控件的基础知识 241 10.1.2 开始编写控件 244 10.1.3 编写CustomControl控件 249 10.2 WPF的互操作性 252 10.2.1 在WPF中使用Winform控件 252 10.2.2 在WInform程序中使用WPF控件 254 10.3 WPF的异步模型 254 10.4 WPF对自动化程序的支持 256 10.4.1 Automation树 256 10.4.2 控件的访问方式 257 第11章 WindowsCommunicationFoundation(WCF)基础 261 11.1 面向服务编程模型(框架) 261 11.1.1 什么是SOA 261 11.1.2 为什么要使用SOA 263 11.2 WCF是什么 264 11.3 WCF的结构 265 11.4 WCF基础 267 第12章 WCF中的契约 268 12.1 服务契约和操作契约 268 12.2 数据契约(DataContract) 269 12.3 错误契约(FaultContract) 272 12.4 创建WCF服务 273 12.5 编写WCF客户端 277 12.6 配置WCF程序 279 12.6.1 服务端配置 279 12.6.2 客户端配置 283 12.6.3 配置工具 284 第13章 WCF中的消息交换 285 13.1 与通信有关的概念 285 13.1.1 Address(地址) 285 13.1.2 Bindings(通信绑定) 286 13.1.3 Contracts(契约) 288 13.1.4 EndPoint 292 13.2 远程对象的传递 293 13.3 大对象的传递 299 13.4 错误处理 303 13.5 会话管理 308 13.6 双向通信 311 13.7 WCF的消息编码 318 13.8 基于队列的消息交换 319 13.9 点对点网络(Peer-To-PeerNetwork) 322 第14章 并发管理 327 14.1 服务器实例行为管理 327 14.2 并发管理 330 14.3 同步上下文 332 14.4 回调的同步设置和异步调用 334 第15章 WCF的事务支持 341 15.1 事务概要 341 15.2 WCF中的事务 343 15.3 创建支持事务的服务 345 第16章 WCF的安全解决方案 353 16.1 认证和授权 353 16.1.1 认证 354 16.1.2 授权 355 16.2 安全传输 360 16.2.1 传输的安全性 360 16.2.2 消息安全 363 16.3 安全策略 364 第17章 WCF的扩展性 368 17.1 服务行为的扩展 368 17.1.1 自定义分发器特性 369 17.2 自定义通道 374 17.3 自定义元数据 378 17.3.1 元数据的基本知识 378 17.3.2 扩展元数据系统 379 17.4 自定义序列化 380 第18章 WCF的运行环境 383 18.1 在IIS上启用WCF服务 383 18.2 在.NET程序中运行WCF服务 386 18.3 在Windows服务程序中运行WCF服务 387 第19章 工作流(WorkFlow) 392 19.1 工作流(WF)简介 392 19.1.1 工作流的概念 392 19.1.2 WindowsWorkFlowFoundation 393 19.2 Activity(活动) 396 19.3 WF运行时 401 19.4 基于状态机的工作流 405 19.5 工作流的持久化 406 19.6 工作流的XAML表示 407

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧