从.net webservice返回平面文本?

时间:2010-12-04 22:53:31

标签: .net asp.net ajax web-services

我在asmx文件中有一个名为getdoctor()的函数我想从javascript调用这个webmethod并将结果变成平面文本,即我想在xml或json中找不到名字医生名字

2 个答案:

答案 0 :(得分:4)

ASMX Web服务不支持此功能。您可以编写通用处理程序.ashx

<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using System.Web;

public class Handler : IHttpHandler 
{
    public void ProcessRequest(HttpContext context) 
    {
        context.Response.ContentType = "text/plain";
        context.Response.Write("some plain text");
    }

    public bool IsReusable 
    {
        get { return true; }
    }
}

现在您可以通过javascript调用您的处理程序:http://yoursite.com/getdoctor.ashx

另一种选择是使用WCF

答案 1 :(得分:0)

如果您不想要任何包装,为什么要将其公开为asmx?只需一个香草处理程序(ashx)就可以了 - 只需将文本写入响应并将内容类型设置为text / plain

使用MVC,您只需从动作中返回一个字符串。