webService 返回值问题

    前段时间在自己的笔记本上(开发环境是VS2008)测试用ExtJs+ASP.NET做一个信息系统框架,一切OK;

    在项目迁到公司电脑(VS2005)上之后发现问题了,webService返回的结果都是XML 格式的。弄了很久没有解决,后来干脆都用aspx做后台输出数据

    今天偶然看到人家用Response.Write 在后台webService输出数据,果然可以。

  

    测试代码如下:

  

   

<%@ WebService Language="C#" Class="TestWebService" %>

using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class TestWebService  : System.Web.Services.WebService {

    
    //原先通过return方式返回的是XML格式的结果
    [WebMethod]
    public string HelloWorld_Old(string firstName, string lastName)
    {
        //return string.Format("Hello {0} {1}", firstName, lastName);
        return "{'success':true,'firstName':'" + firstName + "','lastName':'" + lastName + "'}";
    }

    //通过Response 输出string类型
    [WebMethod]
    public void HelloWorld(string firstName, string lastName)
    {
        //return string.Format("Hello {0} {1}", firstName, lastName);
        string rtnStr="{'success':true,'firstName':'" + firstName + "','lastName':'" + lastName + "'}";
        this.Context.Response.Write(rtnStr);
    }
}

 

posted @ 2010-04-02 13:30  niky  阅读(9601)  评论(2编辑  收藏  举报