在Webmethod中显示更改消息

时间:2016-03-10 11:53:27

标签: c# asp.net webmethod

[webMthod]

HttpContext.Current.Response.Write("<script>alert('your messsage')</script>"); 

2 个答案:

答案 0 :(得分:0)

如果您对web方法执行ajax j查询调用,则可以在失败和成功方法中发出警报,仅从您要打印的Web方法返回数据。

<script type = "text/javascript">
    function ShowCurrentTime() {
        $.ajax({
            type: "POST",
            url: "WebForm3.aspx/GetCurrentTime",
            data: '{name: "' + $("#<%=txtUserName.ClientID%>")[0].value + '" }',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: OnSuccess,
            failure: function (response) {
                alert(response.d);
            }
        });
    }
    function OnSuccess(response) {
        alert(response.d);
    }
</script> 

  [System.Web.Services.WebMethod]
        public static string GetCurrentTime(string name)
        {

            return "messaage";
        }

如果您正在做其他事情或者您正在采取与此不同的事情,请告诉我。

答案 1 :(得分:0)

除了方法返回的数据外,您是否需要一种显示备用消息的方法?

为此,我使用了一个类,其中我嵌入了我想要返回的数据。这样,所有服务方法都返回一个公共类,它具有您想要传递的消息,以及调用者实际需要的数据。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

public class Service_Response
{
    public string Message { get; set; }
    public dynamic Data { get; set; }

    public Service_Response()
    {

    }

    public Service_Response(string msg)
    {
        this.Message = msg;
        this.Data = null;
    }

    public Service_Response(string msg, dynamic obj)
    {
        this.Message = msg;
        this.Data = obj;
    }

    public Service_Response(string msg, object obj, Type obj_type)
    {
        this.Message = msg;
        this.Data = Convert.ChangeType(obj, obj_type);
    }
}

要使用它,

[WebMethod()]
public static Service_Response GetHelloWorld() {
      return new Service_Response("hello world", true);
}
//or
[WebMethod()]
public static Service_Response GetHelloWorld(int i) {
      return new Service_Response("hello world" + i);
}
//or
[WebMethod()]
public static Service_Response GetHelloWorld(string name) {
      var data = DateTime.Now;
      return new Service_Response("hello world from " + name, data);
}