使用 Microsoft Visual Studio LightSwitch  建立应用程序

做为商业应用的核心,大多数程序组合了两种内容:数据+窗口。LightSwitch对他们进行了优化,使开发变得非常简单。现在让我们来共同体验一个简单的演示,在这个演示中我们可以感受到使用LightSwitch是多么的轻松。

Hello World

LightSwitch是Visual Studio产品的独立安装包(将来会集成到Visual Studio专业版及更高级的版本)。Visual Studio专业版在构建应用系统方面给用户非常多的选择,包括构建顶层的企业级应用。他非常强大,但同时你需要做出很多选择和并考虑如何构建出最终的软件架构。而LightSwitch使得这个选择变的异乎寻常的简单:VB还是C#!

为了演示LightSwitch的基本功能,我们将创建一个用于跟踪员工信息的应用程序。由于这一类应用程序总是以一些数据表开始,LightSwitch也是提供了两个选择:

这里我们避免进行一系列复杂的数据库操作,就选择“Create New Table”吧。当你编辑一个新创建的表的时候,你会注意到另外一个功能,商业应用领域的数据类型(business domain data type):

选择这种数据类型可以带来自动的数据完整性检验和其它的一些功能。例如,当你选择PhoneNumber,LightSwitch将对输入的数据格式进行有效性检验,并且会给出每一段电话号码的详细编辑格式。在这个例子中我将填写一张Employee表,其中带有一些和员工信息相关的列:

创建数据表很容易。显然,下一个步骤就是创建一些窗口以便编辑我的数据。完成这件事情易如反掌,简单地在Employee表的工具栏上选择“+Screen”按钮就可以了:

就像下图显示出来的那样,这里有一些常用的样式用于创建窗口。LightSwitch中自带了一些通用的窗口样式。在本例中我将选择“Search Data Screen”这个样式,这个窗口带有一个数据网格视图和查询的功能。然后设置“Screen Data”指向我们的Employee表:

为了能够添加新的员工信息数据记录,我们还要创建一个“New Data Screen”:

就是这么简单!现在我们只要按下F5键,一个全功能的应用程序展现在我们眼前:

在左边Tasks面板里面的两个链接是我们新建的。如果你选择“CreateNewEmployee”,就可以马上开始添加新的数据记录。注意,如果你在PhoneNumber控件上点击了下拉列表按钮,这种商业领域应用数据类型将展开用于编辑详细信息的列表:

另一个常用的功能可以让你避免花费大量时间在检验数据有效性上。LightSwitch帮你完成了这种工作。例如,如果我输入了一个无效的email地址,LightSwitch会自动提示错误:

当我打开“SearchEmployee”窗口时,你会看到一个完整的、支持数据查询和分页显示的表格:

查询功能对表中的所有字段都是可用的,这使得查询变得非常有用。

立即定制模式

一旦应用程序运行后,我们可能会想要对用户界面做一些调整和改进。对于常规的项目,这通常要涉及到修改标记语言(例如,XAML或HTML),重新编译,然后重新运行应用程序。LightSwitch使得这个过程变得简单,当应用程序运行在调试模式下的时候,只需通过点击“Customize Screen”按钮就可以实现。当你点击“Customize Screen”按钮的时候,我们正在运行的应用程序窗口被隐藏到右上角,我们可以在定制窗口中得到了正在运行的用户界面上所有元素的树形结构和对应的属性窗口:

我们现在可以修改界面显示上的内容,比如,改变一个列的名字(可以在单词之间加上空格,也可以根据数据架构实际意义来更改列的名字使其更易读):

最有趣的事情是应用程序还在运行中。我们不必为了更改用户界面而终止应用程序。所以当我们在工具栏上点击保存按钮,设计窗口被折叠起来,然后我们又回到了运行中的应用程序,这时在定制模式中进行的更改已经生效:

这种定制方式使得应用程序开发更加快捷。

接下来,我可以为Employee表添加一个图片类型的EmployeePicture字段。当我添加了新字段后,查找窗口默认的显示布局为降序排列:

这个布局是易读的,但并不是最理想的。如果我转换到立即定制模式下,我可以改变默认的布局到另一个行项目上,其样式允许在每一行的图片旁添加一些细节的文字:

在做了些调整后并保存后,我得到一个更好的细节视图:

与Office集成

在商业应用程序中,另外一个非常常见任务是与office产品集成。LightSwitch也使得这项工作变得非常容易。如果我们仔细看一下我们的查找窗口,你会发现一个内建的“导出到Excel”的选项:

除了可以导出到电子表格外,你还能访问Access数据、使Word自动产生新的数据绑定文档、激活Outlook和任何其它任何可以通过Office 对象模型能完成的工作。例如一个常用的任务:用Word文档格式创建印制的发票。

其它数据源,包括SharePoint

并不是你的所有数据都存储在单一的数据库中。很多时候你需要的不止一个数据库,还包括其它的数据源。LightSwitch通过连接不同的数据源使得处理多个数据源变得简单(内部使用WCF RIA服务去呈现数据)。举一个例子,你能够连接到SharePoint列表并且创建新的窗口用于组合数据库和SharePoint的数据。能完成这类数据组合的能力是非常强大的,而能联接不同的数据库和数据源而不需要写任何代码,这真的是太妙了:-)

开启云计算

我相信你已经看到了我们提供了一系列的云计算服务,在LightSwitch也不例外。事实上,就像我上边所展示的那样,LightSwitch为云计算设计了相同的数据和用户界面设计器。你可以轻松的创建你的数据库架构并且用SQL Azure来存储数据。你的商业逻辑可以在“云”端运行,这意味着你可以永远不必去为系统管理工作操心。关于“云”端真正强大是在这个平台上没有什么特别的需要你去做的事情。当你对你的应用程序满意的时候,你可以轻松地部署应用程序并将URL告诉用户。对于“SQL Azure”也是一样:如同普通数据库一样的操作。

运行在浏览器上

LightSwitch默认将生成桌面应用程序。这一类应用程序可以很容易的处理本地数据并且可以与Office交互。但某些时候你想通过浏览器来访问应用程序,这可以很容易的通过设置应用程序属性来实现:

现在当我通过F5来登录应用程序时,程序在我的浏览器中显示出来(我用IE作为我的默认浏览器,但是在这个例子中我用FireFox来展示其灵活性):

在浏览器中显示的时候,像“Export to Excel”这样的功能是不可用的。但尽管如此,你仍然可以看到应用程序的执行是多么的容易。

扩展性

我们现在正和一些Visual Studio合作伙伴开展一项工作:为LightSwitch增加新的扩展包。在特定情况下,你会期望有一套丰富的控件用于多种类型的数据和服务上(例如:包裹托运)。在这个主题演讲中,我们也展示了一个新的应用程序皮肤,它拥有一个现代风格的界面和可触摸的屏幕。再次强调一下,当编写应用程序并利用这些新的扩展功能的时候我不需要做任何特别的事情,只需要简单的从下拉框中选择了新的皮肤而已。

发现更多

在这个演示中,我已经用到了很多LightSwitch的核心功能。我没有提到的一件事情是编写代码(毕竟这是Visual Studio产品)。因为你正在使用VS,你拥有framework的完整功能,包括LINQ在内。我们的目标就是让LightSwitch解决大部分繁琐的工作而让你把注意力集中到核心的商业应用逻辑上,你所写的代码就是你想要写的,除此以外不用考虑其它事情。

LightSwitch并不是为每一个开发者,为实现每一个商业应用系统所用的,特别是当你有复杂的系统需求的时候。与此同时,LightSwitch应用程序本身是健壮的,它建立在.NET技术,包括Entities和WCF,基于目前你选择并使用着同样的技术。因为这个应用程序是在VS .net上而建立的,你可以在Visual Studio完整版上打开LightSwitch项目并做高级的扩展,当你的应用程序开始变得更加流行并且被更广泛使用的时候,这样做特别有用,因为你需要做比LightSwitch核心产品所支持的更多事情。

你可以在Visual Studio LightSwitch新的主页上找到更多的信息。如果你正在参加在这一周在Redmond的VSLive!,那么请在Hands on Labs这个部分多留意一下,你可以亲自试用一下LightSwitch。在这个月月末的时候,我们还会发布一个正式beta版本并提供给大家下载。

当beta版本在这个月发布后,我将会发布一个手把手教程来帮你建立第一个LightSwitch应用程序,到时候你可以亲自来试一下。希望您能用的开心!

 

 

 

作者: Tomny 发表于 2011-05-30 15:50 原文链接

推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架
新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"