zoukankan      html  css  js  c++  java
  • DataService系列教程 (一)

    DataService系列教程 (一)

    之前做了一些小项目,用到了DataService这个数据调用框架,所以根据自己实际理解和网上的一些参考,自己做了一些小随笔,方便以后记忆!

    关于ADO.NET Entity Framework部分的内容见ADO.NET Entity Framework(1-4)

    http://kb.cnblogs.com/page/43963/

    本文例子下载: https://files.cnblogs.com/wxwinter/lz.rar

    ADO.NET Data Service介绍

    1.ADO.NET Data Service的DataServiceHost是一个WCF Service,由System.Data.Services.DataService提供来自NET3.5 SP1 类库中的System.Data.Services.dll

    2.DataServices会自动为加载的Entity对象生成具有增查删改功能的WCF服务

    3.DataServices是以Http方式与客户端进行通信.任何可以实现HTTP访问的客户端,都可以与DataServices交互

    4. NET3.5 SP1的客户端可以使用System.Data.Services.Client.DataServiceContext与DataServices交互,该类来自NET3.5 SP1 类库中的System.Data.Services.Client.dll 文件

    5. Silverlight 2.0客户端可以使用System.Data.Services.Client.DataServiceContext与DataServices交互,该类来自Silverlight 2.0 类库中的System.Data.Services.Client 文件

    6.DataServices提供ATOM与JSON两种格式用来描述数据结构,说明如下:

    ATOM

    RSS类似,也是建立在XML数据格式的基础之上的

    Atom相对RSS格式而言,进行了扩展,提供了比RSS更多的项目属性

    JSON

    格式如下

    {

    "name": "wxd",

    "time": "2008/10/10 10:10",

    "value": 123.456,

    "list": [ "wxwinter", "lzm"]

    }

    1.创建DataService项目

    数据表

    tabA

    c为可空字段,这样设置是为了后面讲可空字段和非空字段的区别;

    tabB

    z类似;

    创建项目:

    创建实体模型

    生成实体模型:

    生成项目:

    2. 创建一个数据服务使用EF模型

    生成SVC文件后双击打开,在指出位置中写上刚设置的EF实体例子的名称:

    SVC代码,将数据库表纳入服务
     1 using System;
     2 using System.Collections.Generic;
     3 using System.Data.Services;
     4 using System.Data.Services.Common;
     5 using System.Linq;
     6 using System.ServiceModel.Web;
     7 using System.Web;
     8 
     9 namespace ServiceDataDemo_Service
    10 {
    11     public class DataServiceWCF : DataService<EF_Data>/* TODO: 在此放置数据源类名*/ 
    12     {
    13         // 仅调用此方法一次以初始化涉及服务范围的策略。
    14         public static void InitializeService(DataServiceConfiguration config)
    15         {
    16             // TODO: 设置规则以指明哪些实体集和服务操作是可见的、可更新的,等等。
    17             // 示例:
    18             config.SetEntitySetAccessRule("tab2", EntitySetRights.All);
    19             config.SetEntitySetAccessRule("tab1", EntitySetRights.All);
    20             //config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All);
    21             config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
    22             config.UseVerboseErrors = true;//返回错误信息
    23 
    24             
    25         }
    26     }
    27 }

    3.NET客启访问DataService

    引用数据服务

    右击SVC文件在浏览器中运行,并复制URL:

    在项目中添加服务引用,将URL粘入后前往,点击添加:

    成功:

  • 相关阅读:
    Step By Step(C++模板类)
    Step By Step(C++模板重载和特化)
    Step By Step(C++模板推演)
    Step By Step(C++模板Policy)
    Step By Step(C++模板参数)
    Step By Step(C++模板解析)
    Step By Step(C++模板Trait)
    Step By Step(C++模板基本技巧)
    离职引发的诸多感触
    Step By Step(C++模板函数)
  • 原文地址:https://www.cnblogs.com/pyffcwj/p/ServiceDATA.html
Copyright © 2011-2022 走看看