一种新的移动N层体系结构(第8部分)
在这部分,我将更为实际的展示从代码角度来看这一新的移动架构第一部分看起来会是个什么样子,如果您需要了解一些背景,请参阅本系列前面部分:
这个已经实现的架构被发布在CodePlex一个名字为Windows Mobile Architecture Blueprint的架构里,这意味着您可以访问完整的源代码并进行讨论,提出改进建议等等,当我带着你纵览整个架构时,我建议你身边放一份源代码以方便查看更详细的信息。
我们现在正在准备使用之前创建的WCF服务,因此,我们已经增加了一个新的“Smart Device Project”,并选择创建一个目标运行在Windows Mobile 6标准版(也就是Smartphone)以及最新的.NET Compact Framework(3.5)上的设备应用。
因为Visual Studio尚未提供工具支持,想要使用WCF服务,您需要首先下载并安装Power Toys for .NET Compact Framework 3.5。然后有一个名为NetCFSvcUtil.exe的工具,你可以像这样使用...
...而且在源代码中你可以找到一个批处理文件( CreateServiceClient.bat ),将执行此命令(请注意,您可能需要更改NetCFSvcUtil工具的路径,这取决于您运行在32还是64位环境里)。请注意,当您执行此命令时这个WCF服务必须正在运行,运行此批处理文件看起来像这样...
...其结果是生成两个文件( Service.cs和CFClientBase.cs ) 。由于这些文件已经是源代码的一部分,他们将被简单的替换。而这个运行批处理文件的程序将是下一个可以预料到的集成到Visual Studio里面的最好的事情。
现在,加上这两个文件,我们就可以开始使用WCF服务,代码如下...
ServiceClient.EndpointAddress = new EndpointAddress("http://192.168.0.100:5610/Service.svc/basic");
ServiceClient service = new ServiceClient();
Category[] categories = service.GetCategories();
...我们能做的第一件事就是建立了一个移动设备可以达到的服务终端(这里就是一个IP地址)。然后,服务代理(ServiceClient)被实例化并用于获取类别清单。请注意业务实体(类别)被声明在业务域里的后面(由LINQ2SQL自动生成,并由WCF自动序列化)是移动客户端上现成可用的(感谢我们上面生成的代理)。
在今后的帖子中,我们将覆盖更多的Windows Mobile Architecture Blueprint的实现。
在有些项目中,我们用了Alex(前微软MVP,现已是微软移动顾问)的一个非常简单明了的实现(见第1部分和第2部分)。
分享到:
相关推荐
1. **嵌入式开发**:Windows Mobile平台的开发属于嵌入式系统开发的一部分,这意味着我们需要了解嵌入式硬件环境,如处理器架构(通常基于ARM),内存管理以及功耗控制。开发者通常使用Visual Studio或Microsoft ...
移动MAS机,全称为Mobile Application Server,是一种专为移动设备提供服务的应用服务器。它在企业移动信息化中扮演着重要角色,为企业提供了与移动设备进行数据交互、应用部署和管理的平台。MAS机主要关注于安全、...
Android 一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导开发 IOS 由苹果公司开发的移动操作系统 Webkit 一个开源的浏览器引擎,在手机上的...
Java 2 Micro Edition(J2ME)是一种轻量级的Java平台,主要用于移动设备、嵌入式系统和智能电器等。在2000年代初,J2ME是手机游戏开发的主要平台,尤其在非智能手机(如诺基亚的Symbian系统手机)上广泛应用。本篇...
根据提供的文件内容,以下是移动车联网增值服务平台架构设计的相关知识点分析: 1. 移动车联网的基本概念:移动车联网(Mobile Internet of Vehicles, MIOV)是指将移动通信技术应用于车辆与车辆、车辆与道路基础...
1. **C#语言基础**:C#是一种面向对象的编程语言,由微软公司开发,用于.NET框架。了解其语法、类、接口、异常处理、泛型、LINQ(Language Integrated Query)等核心概念是开发的基础。 2. **.NET Core与.NET ...
为了解决上述问题,本文提出了一种基于可能性函数的方法来实施链路层提示(hints)。这种方法利用了链路层提供的信息来估计网络层的移动情况。具体来说,可能性函数用于评估两种级别的移动情况: 1. **子网间的移动*...
ASP.NET是微软公司推出的一种Web应用程序开发框架,它提供了丰富的功能和工具,便于开发者构建高效、可扩展的Web应用。在这个基于ASP.NET的旅游网站毕业设计中,我们将深入探讨如何利用C#编程语言和SQL Server 2005...
《YD-T 1543.2-2007 2GHz WCDMA数字蜂窝移动通信网 Iu接口技术要求(第一阶段) 第2部分:层1》是针对2GHz频段WCDMA(Wideband Code Division Multiple Access,宽带码分多址)数字蜂窝移动通信网络中Iu接口的技术...
【电子商务安全与支付XXX(第8章移动支付).ppt】主要涵盖了移动支付的多个关键方面。以下是关于这个主题的详细解释: 1. **基本概念**: - **移动电子商务**:指的是利用移动通信设备(如手机、PDA)通过无线网络...
#### 第八章:高级 XNA 框架开发 这一章进一步深化了对XNA框架的理解,特别是对于游戏开发方面的内容,包括: - **Alien Shooter 增强功能**:介绍了如何为之前的游戏添加更多特性,以提高游戏的可玩性和吸引力。 ...
也有分析认为,谷歌并不想做一个简单的手机终端制造商或者软件平台开发商,而意在一统传统互联网和 移 动互联网。----------------------------------- Android 编程基础 4 Android Android Android Android 手机新...
移动代理(Mobile Agent)是一种能够自我迁移并在网络的不同节点上自主执行任务的软件实体。它们的主要特点是: 1. **移动性**:能够在不同的主机之间移动。 2. **自治性**:能够独立地完成特定的任务。 3. **可...
在移动开发库中,Java是一种广泛使用的编程语言,因为Android原生支持Java。Java以其“一次编写,到处运行”的特性,使得开发者可以轻松地将应用部署到各种Android设备上。Android的Java开发主要使用Java SE的子集,...
8. **兼容性与标准**: 参考文献中提到的Mobile Payment Forum White Paper和J2ME相关的支付技术,表明研究可能考虑了行业标准和现有技术的兼容性,以确保平台能在多种设备和网络环境下运行。 综上所述,移动支付的...
根据提供的信息,我们可以深入探讨移动互联网服务架构(MISA)中的关键知识点,特别是与工具、标准及服务开发过程相关的部分。 ### 服务开发 #### 工具与Java 2 Micro Edition (J2ME) 在移动服务开发过程中,选择...
C#是一种面向对象的编程语言,常用于开发Windows Mobile平台上的应用程序,包括我们提到的GPRS应用和翻译软件。 “c#”作为标签,强调了开发这些应用所使用的编程语言,C#具有强大的类型系统、垃圾回收机制和丰富的...