WCF框架作为一个高效的.NET程序语言。其混合了函数语言和物件导向程序编制语言,并且***的适用于编程、算法、技术和探索性开发,因此可以在使用的过程当中感受到趣味性和吸引力。
移动设备的寻址能力问题一直以来都非常棘手,它会使编写从服务器接收推送数据的WCF框架应用程序变得非常困难。小型设备一般都不具有与其绑定的静态 IP 地址或动态 DNS 项。对于此类设备,常见的解决方法是在设备联机时向服务器发送一个 HTTP 请求,然后服务器使该请求进入等待状态,直到有内容要推送给设备为止。此时服务器使用更新内容来响应这个一直在等待的请求,而设备则在开始处理更新内容同时发出另一个请求以等待下一次更新。
此解决方法会给服务器的可伸缩性带来影响,因为它必须同时挂起许多请求,而不是立即响应它们并随即关闭连接。这还会缩短设备的电池使用寿命,因为设备必须始终保持连接状态。如果在服务器的更新内容准备就绪时设备未处于开启状态,服务器将无法发送更新,它必须丢弃更新内容或继续保留此状态,即都为哪些设备提供了哪些更新。***,如果网络不可用,应用程序也无法发送或接收消息。#t#
为 Windows Mobile 应用程序的开发人员提供了通过 Microsoft® .NET Compact Framework 3.5 访问WCF框架 功能子集的能力,由于此工具包括的两个新 WCF 绑定元素非常有利于使用电子邮件传输来收发消息,因而解决了上述的许多问题。由于许多设备已经具备电子邮件同步功能,因此这些传输可借助电子邮件的固有队列特性和已在 Internet 上建立的电子邮件服务器来创建可寻址的消息队列,这些消息队列能够以真正的消息推送方式进行点对点、设备对服务器以及服务器对设备的消息级别的通信。在本文中,我将概述 .NET Compact Framework 3.5 所支持的 WCF框架子集,并介绍如何在移动应用程序中利用这些传输和工具。
为演示传输是如何工作的,我将构建一对小巧的示例应用程序,来使用电子邮件在 Windows Mobile 设备与计算机之间发送类似于邮件的即时消息。邮件传输只支持单向消息传送(与“请求–答复”流程不同),这非常适合于即时消息应用程序。
首先要执行的两个操作是安装 WCF框架和确定目标设备。此目标设备(无论是实体设备还是仿真设备)必须被配置为能够访问 Exchange Server 2007 邮件帐户。在测试应用程序前务必要执行此操作。
如果配置的是仿真设备,请使其继续运行或在关闭前保存其状态,否则它将恢复到没有邮件帐户设置的状态。如果忘记这一点,您可能会发现邮件都堆积在设备的发件箱中而无法发送出去。