基于Exchange Server Web Service开发协作、应用平台
Exchange 2007 API: 全新的Web services API-->提供了Exchange的Web Services实现 在开发应用程序时能够使用Web Service 技术带来的可扩展性和丰富功能
基于准标的Web Service实现-->HTTP / XML / SOAP / WSDL
不再推广和支持的开发技术: Exchange providers for WMI
Collaboration Data Objects for Exchange Management(CDOEXM)
Collaboration Data Objects for Exchange
Workflow(CDOWF)
Exchange Web Forms
Outlook Web Access Themes documented in Exchange Server 2003
为什么要使用Web Service? 随处可以使用、无论是在内部网络、Internet
统一完整的存储访问-->代替CDO、WebDav以及OWA URL命令
提供强类型对象
提供远程的访问-->ExOLEDB and CDOEX只能提供本地的部署
CAS与Web Service: Exchange 2007中的Web Service-->AutoDiscover Exchange Web Service UM Web Service
EWS虚拟目录-->Services.wsdl 描述客户端和服务器之间的约定 Messages.xsd 定义请求和响应的SOAP Types.xsd 定义了在SOAP消息中使用的元素
使用Web Service: Web Service调用过程-->见下图:
Web Service消息循环-->见下图:
操作Operations: 操作(Operations)-->在EWS中操作是对服务所提供动作的抽象描述 操作是描述在WSDL中用以说明在服务器之间发送和接受的消息 Exchange 2007提供了29个操作对应与29个由客户端访问服务器所提供的.Net Web方法
EWS操作(1)-->见下图:
EWS操作(2)-->见下图:
Proxy Objects: 代理对象(Proxy Objects)-->是充当EWS服务接口的可编程对象 提供对所有EWS列出的类型的访问
生成代理对象-->wsdl.exe 在VS中添加Web引用 见下图:
编写简单的EWS客户端应用: 1.创建代理对象引用参考
2.设置ExchangeServiceBinding代理类[ExchangeServiceBinding esb = new ExchangeServiceBinding();esb.Credentials = new NetworkCredential("Peter","password","contoso");esb.Url = @https://mail.contoso.com/ews/exchange.asmx;
3.调用操作发送请求并处理响应[CreateItemResponseType createItemResponse = esb.CreateItem(createEmailRequest);
EWS API提供的功能: Exchange 2007中的Web Service包括: 对Outlook PIM对象的高效访问 事件和提醒 消息同步 可用性服务 自动发现服务 E-mail生存周期管理 OWA Web Parts
响应对象: 响应对象-->Indicate available methods other than modify or delete,e.g. reply, accept
Point to method schema supported for each item
Allow responses to messages and calendar items in a single,efficient roundtrip
提醒: 由客户端或者服务器初始化
能够提供有用的数据
灵活
容错-->代替WebDav提醒和异步存储事件(onSave,OnDelete...)
提醒的"Push"场景-->见下图:
提醒的"Pull"场景: 松散偶合 紧偶合 -->见下图:
同步: 通过同步实现简化的文件夹使用 基于Exchange ActiveSync 常时间活动连接订阅
E-mail生存周期的管理: 用户使用托管文件夹分类管理电子邮件 配置策略 生成汇总报表 Enhanced search with an export tool
OWA Web Part: 收件箱、日历、联系人和任务组件
灵活性-->在SharePoint中使用或直接在浏览器中 /owa/?cmd=contents&module=inbox∂=1">/owa/?cmd=contents&module=inbox∂=1">/owa/?cmd=contents&module=inbox&part=1">https://<server>/owa/?cmd=contents&module=inbox&part=1
可用性服务: 忙/闲状态信息 外出办公室 代替了OWA URL命令("?cmd=freebusy") 与Outlook 2007使用的是相同的API
实现工作流: 构建基于WWF的工作流应用-->平台技术 今后所有的工作流都将迁移到WWF
Agent-->开发基于事件的应用 "event sink"->Agent Microsoft.Exchange.Data.Transport.NET 仍然需要注册并运行在Exchange Server
Exchange Server 2007 SDK-->http://www.microsoft.com/downloads/details.aspx?FamilyID=5c11fa93-13c5-49f7-bf3c-3e9fcb2b9707&DisplayLang=en
本文转自 叶俊生 51CTO博客,原文链接:http://blog.51cto.com/yejunsheng/161344