WCF RIA Services 基础

http://www.cnblogs.com/2018/category/262512.html

前面几篇文章分析了WCF Data Service的使用,在RIA系统的开发中,和WCF Data Service类似,WCF RIA Service提供了更方便的功能。

由于WCF RIA Services目前主要是在Silverligh的场景下使用,因此主要以这个为例说明。

开发环境:

VS2010

Siliverlight 4 Tools for VS2010(Silverligh4_Tools.exe):SL4 SDK、RIA Service等

Silverlight 4 toolkit

RiaServicesToolkit

项目模板Business Application

这个模板包含了Membership的基本应用框架。

模板项目目录结构

服务端:

Models:

DTO: 用于在服务端和客户端传递的对象

Shared:用于包含服务端和客户端的共享代码

Resources:

包含可本地化的资源文件【通过连接在客户端和服务端共享】

Services

Domain Service Class: 基于WCF RIA Services框架产生的服务

客户端:

和名称对应比较清晰

如果显示项目的隐藏文件,可以看到Generated_Code目录,这个IDE基于WCF RIA Services自动生成的对象,这样客户端就不要手动的进行代理的生成了【Project Link】。

添加一个新的Domain Service

1. 新加Ado.net Entity(EDMX), Build项目

2. 加Domain Service Class,

clip_image002

Build项目

3. 此时在浏览器即可访问,如

【服务是有框架自动生成的,对应规则是:

如果服务的类是:RIA.Web.Services.NorthWindService

那么svc服务的地址就是RIA-Web-Services-NorthWindService.svc

oData的形式

http://localhost:52878/RIA-Web-Services-NorthWindService.svc/oData/

http://localhost:52878/RIA-Web-Services-NorthWindService.svc/oData/$metadata

以上返回的是架构信息

http://localhost:52878/RIA-Web-Services-NorthWindService.svc/oData/CustomerSet

返回的是数据内容

将服务发布为JSON形式

1、添加服务承载组件

C:\Program Files\Microsoft SDKs\RIA Services\v1.0\Toolkit\Libraries\Server\Microsoft.ServiceModel.DomainServices.Hosting.dll

这个是在RIA toolkit中的一组已经实现的功能

2、配置组件

Web.config

  <domainServices>

      <endpoints>
                    <add name="JSON" type="

Microsoft.ServiceModel.DomainServices.Hosting.JsonEndpointFactory, Microsoft.ServiceModel.DomainServices.Hosting,

Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

3、使用服务

http://localhost:52878/RIA-Web-Services-NorthWindService.svc/json/GetCustomers

具体例子参考: http://dskit.codeplex.com

posted @ 2010-11-01 09:44  2012  阅读(2473)  评论(0编辑  收藏  举报