Visual Studio LightSwitch安装与配置详解。

Visual Studio LightSwitch已经可以通过MSDN订阅下载了,相关介绍可以见:http://www.microsoft.com/visualstudio/en-us/lightswitch

于是我马上下载下来体验了一把:

安装过程很简单,挂载ISO,运行setup.exe,提示需要1G多的空间,其实如果你安装了VS和Silverlight 4 SDK的话,要不了这么多的空间,500多M的安装包也是因为包含VS Shell的原因吧,我没有在干净的系统中安装,具体情况如何不太清楚。以后微软应该出一个针对已有VS环境的精简安装包。安装完成的界面截图如下:

安装完成截图

安装完成后,打开VS,新建项目的时候,就可以看到多出了一种项目类型了,语言可以选择VB.NET和C#,如下图:

新建项目语言可以选择VB.NET和C#

那么,就创建一个项目,初始界面,大家可能都熟知了:

创建一个项目

一开始就然大家创建数据表(table),注意此数据表并非是真正的数据库中的表哦,可以说是一种抽象的数据表,或者是实体框架中的实体。我创建了一个名为的People的数据表:

创建数据表

从上图,可以看到,Id字段是默认就有的,无法修改名称,但可以添加描述,并选择是否要显示在操作界面(Screen)上。这里有个问题,连Id的数据类型都不能修改,只能是Int32,而很多时候我更习惯使用Guid。希望正式版中可以给Id字段选择不同的数据类型(至少可以支持GUID)。

可以添加数据类型的为EmailAddress的字段,对于这点显得非常方便,不过如果能自己扩展数据类型就好了,类似SharePoint那样。

Age字段是一个计算字段,通过属性窗口中提供的“Edit Method”按钮可以打开代码编辑界面,输入如下代码:

 
 
  1. partial void Age_Compute(ref int result)  
  2. {  
  3.   // Set result to the desired field value  if (this.Birthday.HasValue)  
  4.       result=DateTime.Now.Year - this.Birthday.Value.Year;  

代码的自动生成做的很好,如果改变Age的数据类型,可以同步就修改result的类型。

分别查看Name,Age和Email字段的属性,可以看到:

imageimageimage

字符串(或基于字符串)的数据类型,可以被搜索(不太理解Date就不能搜索,还是只能过滤?);每个字段都可以转换为计算字段;对于字符串字段,可以提供一个列表选择;数据验证,根据不同的数据类型,提供了不同的验证选项,也可以设置自定义验证模式;对于可空的字符串数据类型,可以选择空值如何保存。

除了定义自己的数据表以外,也可以添加外部数据源:

image

可以从数据库、SharePoint和WCF RIA Service中添加,奇怪的是数据库的选择可以通过other看到CE 3.5,不过我没有尝试,我只尝试了从SQL Server中导入一个表的操作:

导入一个表

这个过程也可以看作是实体框架中映射一个表的操作(背后实际上就是在用EF进行映射),Required是不能修改的,数据验证时候也不能修改,其他如字段名称,显示名称都可以修改,这样的要求估计也是EF的映射所要求的。

可以说,在LightSwitch中Table是一切的核心,也是一切的启动,可以从工具条的操作按钮看出来。这也昭示着LightSwitch是针对以数据为中心(数据驱动)的LoB应用的。

接着,我们再来添加两个表Dinner和RSVP,如下图:

image

image

这个时候,Peoples也变成了如下的图:

image 

下面,我们来看看Solution Explorer:

image

整个解决方案的显示完全屏蔽了传统的那种列出代码的方式(虽然这个解决方案中实际上包含了6个项目,和n多代码文件),而是只显示三个主要的节点:属性,数据源,操作界面。在数据源中,直接创建的数据表,归到了ApplicationData目录下,每个数据表一个节点,不过无法同时打开多个数据表编辑(可能是基于工作的目标更集中,或更方便自动生成代码的考虑)。而引入的外部数据源是另外单列的。

顺带说一下,导入外部数据源的时候,如果选择WCF RIA Services,暂时只能选择到AuthenticationService和SecurityDataService,单点“Add Reference”的时候,你就会看到其他的项目名称了,如:

image

如果额外添加一个Service进去,暂时还未找到添加的地方。而且,在打开和关闭Add Reference窗口的时候都特别慢,估计是一个Issue

准备好了数据源,那么就要添加操作界面了,添加也是非常简单,打开某个数据表,在工具条上点“Screen”按钮,如:

image

在添加了CreateNew、Search和Details的操作界面后,我们就可以来按F5运行我们的程序的,除了Age计算字段外的一句话,就没有再写代码了,运行效果如下:

image

注意,主界面的右上角有一个“Customize Screen”的按钮,可以让End-User自定义自己的操作界面,这个比那种自定义一下数据网格的显示列什么的强大太多,这都受益于XAML的强大,估计背后的技术是Blend SketchFlow类似的东西。更多的操作界面的体验,我会在后续的博客中和大家分享。

另外,还有一个宝库必须体验一下,就是整个应用程序的项目属性设置,在Solution Explorer上右键点“Application1”,选择“Properties”,就可以看到下图的属性设置界面:

image

在这里,提供了几个决定应用程序运行模式的选项,在General中Shell、Theme的选择让你的应用程序可以与众不同,另外不知道Culture的设置会不会影响界面的文字的显示,多语言的实现是不是在这里?

Extension,可以添加、选择不同的扩展包,实际上给开发人员提供扩展LightSwitch默认构建的地方,你可以把自己开发LoB的一些构建设想编写为LightSwitch扩展,让大家来使用。(此处纯属猜想)

Screen Navigation,可以让大家修改主界面的导航菜单,没有什么特殊的。

Access Control,可以设置内置访问控制的特性,默认提供Form Authentication和Windows Authentication。

Application Type,可以选择应用程序的具体运行情况,具体有:

image

大家注意,第一个选项是Desktop Client,且是只有2层,Silverlight的Client和SQL Server的Data,那么就是说LightSwitch为Silverlight提供了直接(或通过某种包装器)访问数据库的能力(中间应该还是EF)。

关于项目属性设置的体验,我后续会详细分享。

还值得注意的是,LightSwitch实际上也体现了我早在去年的这个构想:使用Silverlight 3作为桌面应用程序开发平台(1——构想)

最后来说说LightSwitch的定位问题:

在某技术网站上有一篇文章:LightSwitch——微软将要推出的专业开发工具,定位问题受到质疑,其中的提到的疑问,确实是现实存在,尤其和Access的功能类同。

不过我认为,LightSwitch相对于Access可以说一种完成不同的东西,运行环境不同,开发环境不同,开发语言不同,部署模型不同(尤其LightSwitch在浏览器模式下的footprint会很小),我相信开发效率与互操作能力也不可同日而语。

另外对于LightSwitch是否是给专业开发人员使用的问题,我觉得专业开发人员也需要这样的工具,有人提到可以开发原型系统或构想验证POC,不过以我自己的实践来说,我未来完成会用于开发正式项目和产品的。因为,我们主要开发专业数据分析产品的,但是偶尔也要给合作伙伴开发一些小的MIS或LoB这种数据为中心的应用,而这个时候,有了LightSwitch,我就不用自己去构建一套LoB的开发框架了,LightSwitch已经为我们大家好了很多基础的东西,我们需要考虑的就只有数据模型和操作界面的问题了。由于LightSwitch很容易上手,我也可以把这样的任务分给一些具有一定基础的实习学生来完成。又如,我之前在一家开发LoB的小企业,实现了一套3层架构的开发框架,提供了基础的数据访问模式,权限管理功能,并制定了一套准则方便大家遵循同样的构架来开发各个功能模块,而现在可以说,LightSwitch把这样的开发框架内化为一个IDE提供给大家,且可以让大家进行定制和扩展。

 

转载于:https://www.cnblogs.com/onlyzq/archive/2010/08/23/1806291.html

Paperback: 853 pages Publisher: Apress; 2nd ed. 2015 edition (December 18, 2015) Language: English ISBN-10: 148420767X ISBN-13: 978-1484207673 In this fully updated second edition, award-winning author Tim Leung explains how to build data-centric business applications for the desktop, cloud, web, and mobile devices in just a few clicks―with no code required―using Visual Studio Lightswitch 2015. This book explains the basics of Visual Studio Lightswitch 2015 plus new features and key advanced topics that every Microsoft developer needs to know to create modern data services and build clients that can run on multiple devices. Visual Studio LightSwitch 2015 is a rapid application deployment tool that simplifies and shortens the time needed to develop business applications. The basics are very easily understood but more advanced users will hunger for more. How do you design complex layouts? How do you query data using LINQ and other syntax structures? How do you secure your application against malicious use? Visual Studio LightSwitch 2015 answers these questions and more as author Tim Leung―winner of a Microsoft 2011 Community Contributor Award for his LightSwitch expertise―covers this breakthrough product in detail. For serious developers building, enhancing, and deploying advanced business applications using LightSwitch makes sense because they can benefit from the elegance, convenience, and cost savings afforded by rapid application development before going beyond the "click-and-you're-done" interface to include the extra value and depth of coding expertise that their clients value. What You Will Learn: Build Desktop and HTML5 business applications for PC or mobile devices Create compelling user interfaces that can support multiple languages Fine tune your application with C#, VB.NET, JQuery, JavaScript, and CSS code Integrate with mapping, GPS, and location services Provide email notification, and Microsoft Office compatible data exports Enable users to carry out advanced searches on data Build screen controls that you can share with other developers
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值