您的位置:首页 > 编程语言 > ASP

Asp.Net开发的WebService输出JSON格式

2012-07-27 16:53 323 查看
本已经做好的Asp.net 2.0 to WebService,客户需要输出JSON的格式(不要SOAP XML),只能进行修改。

修改步骤如下:

1、给VS2005安装ASPAJAXExtSetup.msi,Ext中存放了JSON格式化的方法。

2、项目中增加引用System.Web.Extensions (.Net)。

3、Web.Config 中在<system.web>下增加配置节点 :

<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" type="System.Web.Script.Services.ScriptHandlerFactory,
System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</httpHandlers>
<webServices>
<protocols>
<add name="HttpPost"/>
<add name="HttpGet"/>
</protocols>
</webServices>
4、在Service.cs中相应修改。

(1)using

using System;
using System.Web;
using System.Web.Services;
using System.Web.Script.Services;
using System.Web.Script.Serialization;
using System.Collections;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Data;
(2)Namespace

[WebService(Namespace = "http://XXXXXXXXXX/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[ScriptService]
public class Service : System.Web.Services.WebService {......}
(3)Function

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string GetMobileVerificationCode(string MobilePhone)
{return new JavaScriptSerializer().Serialize("1".ToString());}


用Html去调用JSON格式的WebService

<script type="text/javascript" src="jquery-1.2.6.js"></script>
<script type="text/javascript">
function testJson() {
$.ajax({
type: "POST",
url: "Service.asmx/GetMobileVerificationCode",
data: "{MobilePhone:1}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
var data = eval("(" + msg + ")");
//alert(data);
var t = "<div>";
t = t + "<span>" + data.MemberID + "</span>   <span>" + data.MemberName + "</span>   <span>" + data.MemberMobile + "</span><br />";
t = t + "</div>";
$("#jsonDiv").html(t);
},
error: function(msg){

}
});
}
</script>
<div><input type="button" value="Json" onclick="testJson()" /></div>
<div id="jsonDiv" class="jsonDiv"></div>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: