WCF Data Service 是需要 ORM 的支持的,

主流的 ORM 都已经支持 WCF Data Service 了,

Entity Framework、Linq to SQL、ALinq 这些主流的 ORM 框架。

一、创建 Model

使用Wcf Data Service,首先要做的工作就是创建 Model 了,请根据你所使用的 ORM,阅读相关的教程

二、创建 Wcf Data Service

右键点击项目,选择添加项,然后选择 Wcf Data Service,如果找不到这项,请安装 Wcf Data Service 模版。

生成的代码如下:

public class NorthwindDataService : DataService< /* TODO: put your data source class name here */ >
{// This method is called only once to initialize service-wide policies.public static void InitializeService(IDataServiceConfiguration config){// TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc.// Examples:// config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead);// config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All);
            }
}

接着需要做的是,将生成代码中的 <> 替换成数据源实体类,同时,设置好访问权限。为了方便起,提供了所有的权限。

[System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)]
public class NorthwindDataService : DataService<NorthwindDatabase>
{// This method is called only once to initialize service-wide policies.public static void InitializeService(DataServiceConfiguration config){config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;config.SetEntitySetAccessRule("*", EntitySetRights.All);config.SetServiceOperationAccessRule("*", ServiceOperationRights.AllRead);config.UseVerboseErrors = false;
    }
}

如果你使用的 ALinq,还需要下载 WcfDataService 的 t4 模版用来生成相关的代码。点击这里下载 ,将该t4文件添加到项目,并命名为Northwind.DataServices.tt,打开该文件,将其中的 FilePath 改为对应的 ADMF 文件路径,该路径可以绝对或者相对路径,以便生成相应的代码。

三、启动 WCF Data Service。

或键点击NorthwindDataService.svc文件,在弹出的菜单中,选择 View in Browser 。

运行如下图所示:

接着,便可以使用 OData 协议对数据源进访问。从这里可以看得出来,通过使用 Wcf Data Service ,可以很方便快捷地创建一个OData 服务。

文章转载:http://www.cnblogs.com/LoveJenny/archive/2012/02/13/2350020.html

WCF Data Service 创建OData服务相关推荐

  1. 【转】WCF Data Service 使用小结(二) —— 使用WCF Data Service 创建OData服务

    在 上一章 中,介绍了如何通过 OData 协议来访问 OData 服务提供的资源.下面来介绍如何创建一个 OData 服务.在这篇文章中,主要说明在.NET的环境下,如何使用 WCF Data Se ...

  2. HTTP Basic Authentication验证WCF Data Service

    WCF Data Service是OData协议,也是RESTFul Service的一种,上篇文章已经介绍了HTTP Basic Authentication for RESTFul Service ...

  3. 【转】WCF Data Service 使用小结 (一)—— 了解OData协议

    最近做了一个小项目,其中用到了 WCF Data Service,之前是叫 ADO.NET Data Service 的.关于WCF Data Service,博客园里的介绍并不多,但它确实是个很好的 ...

  4. WCF Data Service 的.NET Client 的不支持原生类型服务操作的解决方法

    WCF Data Service  的.NET Client 的不支持返回值为原生类型(string,int)的服务操作调用,例如我们用如下服务操作: [WebGet] public ObjectQu ...

  5. 如何消费WCF Data Services定义的服务操作

    Service Operations (WCF Data Services)描述了如何 自定义WCF Data Service的服务.客户端如何消费可以参考文章Service Operations a ...

  6. WCF Data Service文章列表

    张善友blogs,有不少文章 http://www.cnblogs.com/shanyou/category/240225.html WCF Data Service安全分析和说明 http://ww ...

  7. WCF Data Service安全分析和说明

    首先需要知道服务运行在asp.net的承载环境中,具体参考: http://blogs.msdn.com/b/wenlong/archive/2006/01/23/516041.aspx 关于安全有个 ...

  8. 如何基于 dotnetcore worker service 创建 windows 服务

    .NET CORE 3.1 提供了 worker service 这么一个模板,可以方便开发者来创建"windows 服务程序"(同样可发布于 linux). 本篇以 centos ...

  9. Silverlight通过Wcf Data Service访问数据库之ADO.NET Entity Framework篇

    转载于:https://www.cnblogs.com/zxbzl/p/3585738.html

最新文章

  1. FinFET与2nm晶圆工艺壁垒
  2. 3ds Max中的V-Ray学习
  3. oracle decode 01427,(oracle)在DECODE中的SELECT(返回多行)
  4. python读取excel-蜗牛笔记-文章-Python读取Excel文件
  5. .net中不同的方法相同的结果
  6. class path resource [log4j.properties] cannot be resolved to URL because it does not exist
  7. 大数据之mongodb -- (2)java集成 MongoDB 3.2,使用Spring-data-mongodb进行集成
  8. 分布式锁的几种实现原理
  9. freemarker ftl模板_效率提升百分之四十,AS模板也太好用了吧
  10. Greenplum小把戏 - 你所不知道的时间戳长度玩法
  11. Mybatis中resultMap的作用-解决实体类属性名和数据库字段不一致
  12. linux的tar命令压缩26g文件,如何使用Linux上的tar命令压缩和解压缩文件 | MOS86
  13. 以前的东西-Mvp2
  14. 【计算机基础】解决Win10电脑主机前面的耳机插口没声音的问题
  15. html设置鼠标移动变色,table行随鼠标移动变色示例
  16. 形象理解计算机网络里的各种抽象概念
  17. 万级并发服务器内核调优总结
  18. Tensorflow2.6实现Unet结构神经网络(3D卷积)识别脑部肿瘤并实现模型并行
  19. java换算当地时间_Java UTC时间与本地时间互相转换
  20. 网上不需要实名的物联卡能用吗?有什么安全隐患?

热门文章

  1. VM中的Linux安装jdk和tomcat
  2. PTA: 6-5 删除单链表偶数节点 (20 分)
  3. ln -s命令 linux_浅谈linux中ln命令,附带案例
  4. oracle自动结束连接,如何在Oracle8x中实现自动断开后再连接?
  5. mysql怎么删除父行_PHP MySQL删除父行和子行
  6. oracle sysoper角色,Oracle sys和system用戶、sysdba 和sysoper系統權限、sysdba和dba角色的區別...
  7. c语言怎么确定输出数的坐标,c语言printf实现同一位置打印输出的实例
  8. java mysql 分页计算公式_关于Java的分页算法,急!
  9. Java构建工具:Maven与Gradle的对比
  10. Hive导入和导出数据