LightSwitch主要分两部,一部分是数据的管理,一部分是界面的管理,分别存储在Data Sources和Screens,今天重点说一下Data Sources。

对于Data Sources有两种方式,一种利用现有数据源,一种是创建新的数据结构表。
利用现在的数据源分为三种情况:数据库,SharePoint,WCF Service,在连接数据方面,目前只提供SQL Server数据连接引擎。数据库作为数据引擎的添加方式与Linq To Sql和ADO.NET Entity Framework基本相同。
重点说一下创建自定义数据表。
右键Data Sources,“Add Table”,可以通过“属性”窗口来改表新建表的属性。

可以通过General的Name属性来改变表的名字,这个名字同时也对应着将来的实体名,同时也有一个Plural Name属性,这个属性的值是生成数据库中该表的名字,而Appearance中的各个属性是表示在界面上的属性,比如Display Name,Summary Property是界面中显示摘要的信息。在表中,有一个默认的字段ID,这个字段是主键,并且是不可删除的,属性面板中可以调置Display by Default,设置这个ID值是否显示在界面上。
对于表的字段,LightSwitch提供了14种类型:
LightSwitch类型
C#中类型
数据库类型
Binary
Byte[]
Varbinary(MAX)
Boolean
bool
bit
Date
datetime
datetime
DateTime
datetime
Datetime
Decimal
decimal
Decimal(18,2)
double
double
float
Email Address
string
Nvarchar(255)
Image
Byte[]
Varbinary(MAX)
Integer
int
int
Long Integer
long
bigint
Money
decimal
Decimal(18,2)
Phone Number
string
Nvarchar(255)
Short Integer
short
smallint
string
string
Nvrchar(255)
对于字段,在属性面板中多了一个Validation,这是对字段的验证,对数数据类型,有最大(Maximum Value)和最小(Minimum Value)值,对于浮点类型,可以设置精度(Precision)和小数点长度(Scale)。货币符号,有“贷币代码”和“符号模式”两个属性,比如货币代码为RMB,符号为¥。并且还有两个属性是所有的类型都有的,一个是Is Required,指该字段是否为空,另外一个是可以实现自定义代码的方法,Custom Validation,点击进入代码:
partial void IDCard_Validate(EntityValidationResultsBuilder results)
{
Regex regex = new Regex(@"^\d{15}|\d{18}|\d{17}[xX]$");
if (!string.IsNullOrEmpty(this.IDCard) && !regex.IsMatch(this.IDCard))
{
results.AddPropertyError("身份证错误!");
}
}
所有的验证方法都是有一个EntityValidationResultsBuilder的参数,这个参数是验证实体属性后,如果错误即调用results的方法返回到界面上。
通过Add选项,可以给表添加关系:

目前有两张表,一张Student(学生),一张Klas(班级),它们的关系是一个班级对应多个学生,是一对多的关系,所以可以通过设置上面的对话框来确定两张表的关系,可以修改Navigation Property中Students的值,也可以修改Klas的值,这两个值分别是Klas和Student的一个属性,同时,也可以设置On Delete Erbhavior,选项是两张表的级连关系,有两个选项,一个是Restricted,另一个是Cascade delete,这与数据中的级连是相同的。表与表间的对应关系,不但有一对多,一对一,多对多都可以设置。
对于列,还有一个计算列“Computed Property”,这个非常像SQL Server 中的计算列,可以通过Add选项的“Computed Property”来添加计算列。比如有一个Quantity,int类型,有一个Price,money类型,新建一个Amount,money类型,选择Edit Method方法,书写代码:
partial void Amount_Compute(ref decimal result)
{
result = Quantity * Price;
}
当然,计算列的代码要根据自己的业务逻辑来决定。
对于Data Source的操作,就说这么多吧,关于Filter,Sort,和Parameters,放到界面设计上说明。
本文转自桂素伟51CTO博客,原文链接:http://blog.51cto.com/axzxs/583995  ,如需转载请自行联系原作者

LightSwitch数据源相关推荐

  1. Visual Studio LightSwitch

    LightSwitch是一个基于模板的自动化开发Silverlight和HTML5应用程序的工具,不同于一般的基于数据字典,配置生成的应用程序的工具,因为LightSwtich提供的所有模板都是可以扩 ...

  2. LightSwitch中的权限

    在LightSwitch中,验证方式分为三种:Windows验证,Form验证,和无验证三种方式,如如果产用前两种验证方式时,就要需要为不同的用户设置不同的权限. 在LightSwitch中,权限设置 ...

  3. Visual Studio LightSwitch初体验和定位看法

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

  4. VS2012中lightswitch新功能介绍(beta)

    最新发布的beta版vs2012中直接包含了lightswitch,对于上一次版本进行了一些更新,主要修复和新增了一些新功能. 主要涉及对ODATA的支持,LightSwitch 应用程序可以立即连接 ...

  5. LightSwitch框架介绍

    LightSwitch是一个简易的开发平台,可以快速简单的实现一些标准的应用,它的特点就是不用对代码特别熟悉就可以来实现开发.就是让业务专家也来开发应用,而不是专业程序的选择(不过有些部分还是需要编程 ...

  6. LightSwitch初试

    今天来简单介绍一个LightSwitch的基础功能应用. 首先我们先分析一下LightSwitch的优势: 1.      RIA客户端(SilverLight)程序,效果不言而喻,无论是视觉还是用户 ...

  7. LightSwitch初识

    2011.07.28微软的LightSwitch终于正式发布了,之前一直很好奇这个被当作"皮球"踢来踢去的产品.论坛上基本上形成三大派系来讨论LightSwitch,A群体认为:L ...

  8. 图解AngularJS Wijmo5和LightSwitch

    Visual Studio 2013 中的 LightSwitch 有新增功能,包括更好的团队开发支持以及在构建 HTML 客户端桌面和 Office 365 应用程序方面的改进.本文结合最新发布的W ...

  9. SpringBoot (八) :Spring Boot多数据源(JdbcTemplate)配置与使用

    什么是JdbcTemplate 为了使 JDBC 更加易于使用,Spring 在 JDBCAPI 上定义了一个抽象层, 以此建立一个JDBC存取框架. 作为 SpringJDBC 框架的核心, JDB ...

最新文章

  1. 纪委计算机管理制度,纪委监察处信息管理办法
  2. 惊天大谎:让穷人都能上网是Facebook的殖民阴谋?
  3. Zedboard学习(五):MIO与EMIO操作
  4. 刷题总结——烽火传递(单调队列+dp)
  5. Python - Windows系统下安装使用virtualenv
  6. Druid 配置_配置WebStatFilter
  7. kali linux超级用户_如何优雅的在Linux上使用Powershell]
  8. [剑指offer]面试题第[7]题[JAVA][斐波那契数列][递归]
  9. Python getattr() 函数==>获取一个对象的属性值
  10. java二分法查找_java 中二分法查找的应用实例
  11. Android - get email attachment name in my application
  12. 非极大值抑制_OpenCV非极大值抑制bug
  13. 标准误计算机excel公式,excel标准误差怎么算
  14. 办公计算机配件,办公电脑加装傲腾如丝般顺滑的办公体验
  15. 乐忧商城项目总结-5
  16. 联想g400从u盘启动计算机,联想G40怎么从U盘启动|联想G40设置U盘启动方法
  17. 汉诺塔问题的解决思想
  18. Linux系统调用之execve函数与标准C库exec函数族(有关于进程方面的函数族)
  19. Jmeter基础-配置原件
  20. java面试总结(day_01)

热门文章

  1. 微信小程序 登录 服务器 c,asp.net core 3.x 微信小程序登录库(也可用于abp)
  2. 应届生在参加面试技巧
  3. 雪碧图/精灵图使用教程(CSS Sprites)
  4. Java多线程问题--schedule函数和scheduleAtFixedRate的用法和区别
  5. Android-Skin-support遇到的几个bug
  6. 金立手机创始人:山寨手机商两年后或只剩20家
  7. ubuntu下刻录光盘
  8. 基于位置的社交网络中的poi推荐
  9. 91SMTP协议和POP3协议
  10. [BZOJ4566][HAOI2016]找相同字符 后缀自动机