随笔- 54  文章- 3  评论- 762  阅读- 39万 

  Astoria是微软公司开发的,互联网上数据服务的基础架构。它基于REST架构,帮助开发人员仅通过标准的HTTP协议,如GET,POST,PUT或者DELETE就能访问数据。Astoria构建在ADO.NET Entity Framework之上,使用使用标准的数据格式如XML,JSON或者RDF进行数据传输。现在CTP已经提供下载,在使用Astoria之前需要安装ADO.NET Entity Framework和相关Tools

安装好ADO.NET EF,Tools和Astoria CTP后就能使用了,首先打开VS 2008 beta2,建立Web Application工程,然后利用ADO.NET EF向导映射数据库中的表Customers和Orders(关于怎样映射,在我的文章ADO.NET Entity Framework 学习(1)中有提到)

添加Web Data Service:

image

向导自动生成两个文件,NorthwindDataService.svc和NorthwindDataService.svc.cs,打开cs文件,做一个修改:

 public class NorthwindDataService : WebDataService< /* TODO: put your ObjectContext class name here */ >

改成

 public class NorthwindDataService : WebDataService<NorthwindEntities>

最后将NorthwindDataService.svc设置为开始页,运行。

image

可以看到这里返回的是XML格式的数据,用RIA能够轻松的展示出来。

在NorthwindEntities里面有两项,Customers和Orders,各自包括名为href的attribute,这里面的值就是访问路径。如果我们想访问所有的Customers,在url后面加上/Customers,便能看到结果

image

也可以增加条件查询,如/Customers[City eq London],便能获得所有城市为London的Customer

image

如果要查询某一个Customer的Orders,在url后加上/Customers[ALFKI]/Orders,便能获得ALFKI用户的所有Orders了:

image

 

Astoria是一个很有用的框架,能够让开发人员很简单的进行数据访问编程。如果想要深入了解,可以参考帮助文档和示例程序,安装后会有。


本文地址: http://www.cnblogs.com/blusehuang/archive/2007/10/16/926208.html

 posted on   紫色阴影  阅读(6786)  评论(14编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
我要啦免费统计
点击右上角即可分享
微信分享提示