环境 :
vs2008+ria service+silverlight
或
vs2010
创建工程
选模板 silverlight Application,勾选[Enable .NET RIA Services]
或者 silverlight business Application
命名MyRiaServiceProject
在MyRiaServiceProject.Web文件夹下
- 创建ADO.NET Entity Data Model以创建OR映射
- 创建每个实体的Domain Services, 里面自动生成了CURD,也可以所有实体创建一个Domain Service,以避免麻烦。
- 创建Domain Service的时候,选中Generate associated classes for metedata,这样可以附带产生domainService.metadata.cs文件
编译,在MyRiaServiceProject文件夹下的Generated_Code文件夹下,自动生成MyRiaServiceProject.Web.g.cs文件,此文件包括了刚才创建的model和service,还有一些别的东西,比较复杂。
客户端使用 :
如果创建的domainSerivce命名为MyService,则客户端欲使用此service,先引用命名空间,然后使用MyContext即可。
关联实体间的相互引用:
作者(Author)------------书(Book)(1对多)
欲获取书籍+作者一览
在service的GetBook方法中Include("Author")
在service的metadata.cs中,book class里面的author字段上面添加[Include]即可
输入Check
在validation中,check对象总是entity的某一个field,如果页面提交中有字段不在entity中,则应该在entity中构造该字段,并添加对应的代码:
假如有此场景,用户注册中有项是PasswordConfirm,确认两次输入的密码是否一致,在提交的check中,判断password与passwordConfirm是否相同