虚拟实验室中的事务管理系统(一、概述)
事务
事务,要做的或所做的事情。我们通常使用事务管理器来计划某天要做的事。Windows Vista包含了一个叫做Windows日历的东西,就是一个简单的事务管理系统:
RIA Services
虚拟实验室里的事务管理系统,用到的核心技术为Microsoft .NET RIA Services,目前最新版本为March 09’Preview。
在RIA Services前,我们往往使用前台Silverlight,后台WCF的组合来构建RIA应用程序,虽然该组合能解决开发过程中的所有问题,不过也存在一些不便之处:
为了减少系统的耦合度,我们通常把一个系统分成表现层(Silverlight)、业务逻辑层(WCF)、数据层等三层(有时更多),数据在不同的层之间传输。由于Silverlight所用的CLR是.Net Framework的一个子集,因此,一个Silverlight Project无法引用普通.Net Framework编写的dll(通常是数据层中的数据类)。这导致我们不得不在Silverlight工程和数据层工程中维护同一个代码,一旦修改数据层中的类,就必须修改表现层中的类。
此外,传统的方法在增删查改等方面也有不便之处。在设计一个系统的时候,我们通常将该系统的用户想象为不可信的,因此,从表现层传递到业务逻辑层的数据,我们往往要在传递前,在客户端(表现层)对其进行验证;当数据从业务逻辑层传入数据层时,我们同样要做一次验证。和维护两个类一样,维护两个数据验证,对于开发人员来说也是不容易的事情。
基于解决上述问题,微软发布了RIA Services。自此,Silverlight和微软自家的DomainService、Entity Data Model紧密地结合在一起。开发人员可以轻松地在Silverlight中“操作”数据库,而不需要像以往那样通过WCF、HttpService等中间过程。
RIA Services解决的问题
其实,RIA Services的对手就是Google的GWT。
Silverlight 3
RIA Services是和Silverlight 3配合使用的,Silverlight 3是Silverlight 2的升级,很多人说,微软的东西要从3.0起才能使用,和Silverlight 2 相比,Silverlight 3多了很多东西。这里有详细介绍,同样的,也可以在笑看风云淡的博客查看一些新增功能的详细介绍。
准备工作
安装Silverlight 3
在安装 Microsoft® Silverlight™ 3 Tools Beta 1 for Visual Studio 2008 SP1前,需要把和Silverlight 2有关的安装删除。当安装完毕后,在Visual Studio 2008中,可以看到和Silverlight 2相比,多了一个Silverlight Navigation Application的模板。
安装RIA Services
安装RIA Services后,建立一个Silverlight工程,可以看到多了一个Link to ASP.NET server project选项,选择该选项,则RIA Services就工作了。
建立数据库
建立一个数据库,用于保存事务: