返回首页

{A}介绍
的Windows Communication Foundation(WCF)的数据服务公开的数据层,并提供一个REST有用的方式,无需通过书面的努力去为AJAX应用程序和其他客户端应用程序访问数据,很容易的方式整个Web服务。这引起了我的兴趣,发挥与WCF。并通过后,我们将看到一个方法,利用实体框架和WCF数据服务进行CRUD操作,用最小的努力。REST的基础
代表性状态传输(REST)是一种软件体系结构的分布式超媒体系统,如万维网风格。 thenbsp关于REST的很酷的事情是,它是不依赖于任何特定的技术或平台。该术语通常用来在一个宽松的意义上来说,没有额外的消息层,如SOAP或会议通过HTTP cookies跟踪特定于域的数据通过HTTP传输来形容任何简单的界面。 RESTful Web服务是一个简单的Web服务实现使用HTTP和REST的原则。可想过这样的Web服务资源。的数据isnbsp的MIME类型的集合; Web服务支持。这往往是JSON,XML或YAML的,但可以是任何东西。 Web服务支持的操作使用HTTP方法(例如POST,GET,PUT或DELETE)。WCF REST服务
WCF REST服务是正常的新增功能,使他们可以在一个RESTful的方式(URI和网址,HTTP动词的用法,使用不同的数据传输格式,如JSON,YAML等)消耗的WCF服务。下表将帮助您了解HTTP动词通常用于实现Web服务。方法描述的GET请求一个特定的resourcenbsp的代表性;放创建或更新一个资源提供的申述删除删除指定的资源。向被确定的资源处理的数据目类似的获取,但只检索头,而不是身体股权返回由确定的资源支持的方法配置WCF服务
这是时间来配置WCF数据服务。虽然这个例子中,我们需要实体框架4,但我相信,配置实体框架是这篇文章的背景。因此,我们将坚持只配置WCF数据服务。在解决方案资源管理器中,右键单击您的ASP.NET项目的名称,然后单击"添加新项"。在添加新项"对话框中,选择"WCF数据服务。{S0的}
对于服务的名称,我选择EFService.svc的。 Visual Studio会告诉你一些生成的代码。你需要添加WCF数据服务的定义为这个特殊的例子,我使用像下面SocialShareDatabaseContext,实体框架数据上下文的名称:

public class EFService : DataService<SocialShareDatabaseContext>

使用Visual Studio开发服务器测试服务,这应是一样的http://localhost:端口] / EFService.svc /会员/ /获取所有成员。如果你打开​​所附的示例项目EFService.svc.cs,你会看到下面的代码: {S}
此外,在web.config中,在底部,你会看到自动添加两部分,一个是:LT; system.webServergt;另一个是LT; system.serviceModelgt的,像下面:{S2的}从客户端使用WCF REST服务
WCF数据服务使您能够在一个XML格式,可以使用的应用程序提供动态访问实体数据。你可以返回XML(默认),JSON的WCF REST服务。有几个方式,消费REST服务,从客户端,但作为一个jQuery的风扇,我会坚持下去。在潜水之前,jQuery的Ajax调用需要一些参数,我们需要先知道,类型:REST方法来调用,即类型,POST / GET / PUT / DELETE。网址:这是他们的网址加上附加在URL的额外的路径的方法名称/实体名称调用WCF服务的URL资料:可选参数,需要调用方法/实体预计参数。内容:将数据发送到服务器时,使用此内容类型数据类型:返回的数据类型,如XML,JSON等。成功:一个功能,如果请求成功,被称为REST服务将返回JSON / XML如果成功的话。错误:如果请求失败,被称为功能
{S3的}
现在,我们将看到如何调用WCF服务的REST方法不同。使用GET方法
列出的URI和藏品,也许其他细节。在我们的例子中,请求成员的集合。{C}使用POST方法
检索收集处理成员的代表性,在下面的例子中,创建一个集合中的新条目。
 $.ajax({

         type: "POST",

         url: "Services/EFService.svc/Members/",

         data: "{Email:'test@test.com', ScreenName:'TestUser'}",

         contentType: "application/json; charset=utf-8",

         dataType: "json",

         success: function (data) {

           // Play with response returned in JSON format

         },

         error: function (msg) {

             alert(msg);

        }

    });    
使用PUT方法
更新整个集合与另一个集合,在下面的例子中,更新的解决成员的集合。{体C3}使用DELETE方法
删除整个集合或一个特定的集合,在下面的例子中,删除会员ID = 1。{的C4}使用示例代码
使用所附的示例代码:VS2010中与安装Service Pack 1微软SqlServer的2005或更高版本实体框架4.0的基本认识
配置您的环境:将sample.mdf和sample.ldf那些要使用SQLSERVER 2005年,从顶部下载dbschema的SQLServer2005.zip和解压。创建一个数据库名称样品和运行解压后的SQL脚本打开web.config和发现connectionStrings节,并根据您的本地SQL Server登录credentialnbsp的编辑连接字符串;
表格数据显示目的,我用jQuery的模板插件渲染收集。运行default.aspx页面看到的样品。历史1.0版本:基本版本更新1.1版:微软SqlServer的2005年附加数据库架构

回答

评论会员:游客 时间:2012/02/06
的Shahriar伊克巴尔・乔杜里
优秀后的兄弟{S4}
评论会员:Wooters 时间:2012/02/06
谢谢,我很高兴你喜欢它{S4}的
评论会员:游客 时间:2012/02/06
的Shahriar伊克巴尔・乔杜里:这个意愿,肯定派上用场,
Monjurul哈比卜
评论会员:感谢{S4}的 时间:2012/02/06
的Shahriar伊克巴尔・乔杜里
评论会员:游客 时间:2012/02/06
感谢分享这样的好文章