zoukankan      html  css  js  c++  java
  • WCF Data Services 基础

    把最近使用的WCF Data Service和WCF RIA Service的使用例子发布在站点http://dskit.codeplex.com , 本系列文章就把WCF Data Service和WCF RIA Service涉及的主要方面描述一下,希望通过这些内容,可以比较顺畅的把这些框架使用起来,以提高开发的效率。

    WCF Data Services中几个基础的概念

    Tenets of REST

    • HTTP method

     Method information is kept in the HTTP header, not in the body of the request.

    • Resource based

     Resources are expressed as “services” that clients consume.

    • Addressability

    The scoping information is kept in the URL.  Operations such as $filter $top $skip

    • Relationships

    How the data relates to each other is expressed in ADO.NET Data Services by resource links according to the CSDL [ specified in the Entity Data Model (EDM)]. A relationship link element such as <link href=”Customers(‘ALFKI’)/Orders

    • Statelessness

    No stateful messages are exchanged between resources

    MIME类型

    承载的服务可以以JSON和ATOM返回【请求时说明MIME类型】用的返回类型如下:

    MIME

    MIME Type

    应用程序类型

    JSON

    application/json

    ASP.NET, AJAX, Silverlight

    Atom

    application/atom+xml

    .NET Clients, Silverlight, ASP.NET mashups

    HTTP Operation Success Return Codes

    根据REST的定义对于不同的操作定义的服务端返回值情况:

    Operation Success Code

    GET 200 OK

    POST 201 Created

    PUT 204  No- Content

    DELETE 204  No- Content

    MERGE 204  No- Content

    简单例子

    VS2010中新建一个WEB工程,按如下步骤建立一个例子项目

    建立微软SQL例子数据库NorthWind

    1、  添加 Ado.net Entity: 选择SQL最初的例子NorthWind数据库

    2、  添加WCF Data Services:WcfDataService.svc

    3、  在WcfDataService.svc.cs配置访问规则:

                config.SetEntitySetAccessRule("*", EntitySetRights.AllRead);

                config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);

                config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;

    以上的部分是配置服务的可访问性和权限、行为等各种参数,具体参考MSDN,如果不对互联网公布的,默认配置也可

    4、服务访问测试:Build解决方案后即可访问

    下表是几个访问的实例

    发布的服务描述

    http://localhost:1206/WcfDataService.svc/

    多个实体实例

    http://localhost:1206/WcfDataService.svc/Suppliers

    单个实体实例

    http://localhost:1206/WcfDataService.svc/Suppliers(1)

    对象关系导航

    http://localhost:1206/WcfDataService.svc/Suppliers(1)/Products

    【工程可从http://dskit.codeplex.com下载】

    可以看到发布一个数据并进行查询等处理写的代码简直是很少了,而提供的功能却非常强大,后续对查询等继续进行说明。

  • 相关阅读:
    【开源】知乎日报UWP 更新
    【开源】知乎日报UWP 更新
    耿丹学院软工助教(2016年上半年)
    c++ STL map 结构体
    2016搜狐笔试二叉树和最大的子树
    从B树、B+树、B*树谈到R 树
    C++继承:公有,私有,保护
    循环队列
    C++中的static关键字
    c++map的用法
  • 原文地址:https://www.cnblogs.com/2018/p/1852579.html
Copyright © 2011-2022 走看看