再谈谈ADO.NET Data Service 数据格式(xml和json)

去年的时候,我写过一篇文章,介绍如何让ADO.NET Data Service返回json数据格式。如果有兴趣,可以参考下面这个链接

http://www.cnblogs.com/chenxizhang/archive/2010/10/27/1862898.html

 

近日被网友问起,为什么这个成熟的框架(ADO.NET Data Service, 现在新版本里面叫WCF Data Service),居然还需要用自定义的Behavior来改变这种输出格式。

事实上,我认为这个问题问得很好,有些事情多问几个为什么,真相将会显现。

 

那么,我们来多问几个问题

1. 什么是json

json的全称是指Javascript object notation, 这种数据格式顾名思义,是用于Javascript的一种原生的数据格式,它一方面较之xml或者html,有体积小的优点,同时它最适合javascript对其进行解析和处理

 

2. 为什么ADO.NET Data Service需要支持json

ADO.NET Data Service作为一种服务,它可能被广泛用于各种业务场景,我们可能通过客户端程序来访问它,也可能通过javascript来访问它。既然希望在javascript中访问该服务,那么最好是能支持json格式。

3. ADO.NET Data Service如何支持json

其实这是内置支持的。去年写的那个文章是一个做法,本文在此基础上再一步地澄清一些技术点,给大家参考

 

为了做演示,我准备了一个简单的项目

image

本例中,我采用LINQ to SQL作为数据模型,访问了Northwind数据库的Customers表

image

同时,我添加了一个最简单的Data Service

image

【备注】以上步骤如果你不清楚,请通过http://msdn.microsoft.com/en-us/library/cc907912.aspx 进行一些基础的学习

 

该服务运行起来之后的效果如下

image

如果我们访问Customers这个实体集合,则会有下面的结果

image

我们看到,它默认是用XML(准确地说,是用Atom)格式返回数据的。

 

好吧,我们回到原始的问题,那么如何返回json格式的数据呢?http://www.cnblogs.com/chenxizhang/archive/2010/10/27/1862898.html 这篇文章确实提供了一个做法,但事实上真的需要这么做吗?

 

既然我们是要在javascript中访问服务,才需要json格式的数据,那么我们就用javascript来访问一下该服务,看看到底会怎么样?

下面的例子,我用了最喜欢的jquery来编写脚本

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeBehind="Default.aspx.cs" Inherits="WebApplication1._Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
    <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript">
   
   script>
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值