WCF Data Services 5.0 和 EF 4.3 Code First
时间:2022-04-25
本文章向大家介绍WCF Data Services 5.0 和 EF 4.3 Code First,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
WCF Data Services 5.0已经在4月9日发布,支持OData V3版本的协议。之前版本的WCF Data Services是随.NET FX 4.0发布的,这次是单独提供了安装包下载。这个版本有几个特性很不错,具体参看文章 http://blogs.msdn.com/b/writingdata_services/archive/2012/04/09/my-favorite-things-in-odata-v3-and-wcf-data-services-5-0.aspx。
新特性主要用于支持开放式数据协议(OData)版本3中的增强部分。以下是部分有趣的特性:
- 词汇表(Vocabularies) —— 标注,主要为使用OData发布的数据提供更丰富的描述(例如,类型验证/范围/显示相关的元数据);
- 操作提供器(Action Providers) ——一种通过在数据中描述URI来注入行为的方法。用户可以通过向这些URI发送请求用于引发一些操作,该特性同样工作于Entity Framework;
- 16项新的空间原语(Spatial Primitives)——它允许客户端在过滤、投影和排序子句中对地理空间数据执行操作;
- ODataLib现在支持对所有的OData负载进行序列化和反序列化;
- EdmLib—— 构建服务的EDM以用于OData序列化/反序列化,其中包括支持标注;
- 支持Any/All查询(目前还不支持联接Join)。
EF 4.3对Code First的支持也很不错,如何在EF 4.3的Code First结合WCF Data Service,可以参考http://msdn.microsoft.com/zh-cn/library/hh527719。这篇文章的代码经过简单的修正就可以跑了。
namespace CustomerDataServices
{
public class CustomerDataService : DataService<CustomerOrderContext>
{
public static void InitializeService(DataServiceConfiguration config)
{
config.SetEntitySetAccessRule("*", EntitySetRights.AllRead);
config.SetEntitySetAccessRule("Customers", EntitySetRights.AllRead | EntitySetRights.WriteMerge);
//config.SetEntitySetAccessRule("EdmMetadatas", EntitySetRights.None);
config.UseVerboseErrors = true;
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3;
}
}
}
Visual Studio 2010 中的实体框架 4.0 和 WCF 数据服务 4.0
WCF Data Services Action Provider for Entity Framework
- 升级CentOS6.5内核,开启Nginx的fastopen和reuseport特性
- Nginx网站使用CDN之后禁止用户真实IP访问的方法
- 相差数十倍的SQL性能分析(r11笔记第98天)
- shell脚本实现整站缓存和预缓存,进一步提升网站整体加载速度
- Oracle中的PGA监控报警分析(r11笔记第96天)
- MySQL错误修复记录:Table xx is marked as crashed and should be repaired
- WordPress百度自动推送JS优化,规避错误、重复推送问题
- Oracle 12c中DBCA搭建备库体验(r11笔记第92天)
- 一行代码彻底禁用WordPress缩略图自动裁剪功能
- MySQL中xtrabackup备份恢复全攻略(r12笔记第11天)
- 分享一次Linux任务计划crontab不执行的问题排查过程
- MySQL 5.6, 5.7并行复制测试(r12笔记第9天)
- MySQL 5.6, 5.7并行复制测试(二)(r12笔记第10天)
- MySQL主从报错解决:Failed to initialize the master info structure
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法