用ASP.Net和ASP.Net Ajax调用WebService

来源:互联网 发布:淘宝ifashion是什么 编辑:程序博客网 时间:2024/05/01 07:34
近来项目中要用到WebService,从网上查了写例子,终于明白些了其中的原由;在此将我的例子放出来,希望大家给出更好的方法;
首先新建一个项目,命名为:Asp.netAjaxTest;
其中Default.aspx中的代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
    <script language="javascript" type="text/javascript">
        function getHello()
        {
            WebService.HelloWorld(CallBack);
        }
        function CallBack(result)
        {
        var returnstr=$get("result");
        returnstr.innerHTML=result;
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server" >
        <Services>
            <asp:ServiceReference Path="~/WebService.asmx" />
        </Services>
        </asp:ScriptManager>
        <div>
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                    <asp:Label ID="Label1" runat="server" ForeColor="Fuchsia"></asp:Label>
                </ContentTemplate>
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
                </Triggers>
            </asp:UpdatePanel>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="实现调用WebService上的方法" />
            <input id="Button2" type="button" value="用JavaScript调用WebService上的方法" onclick="javascript:getHello();" /></div>
        <div >
        <span id="result"></span>
        </div>
    </form>
</body>
</html>
Default.aspx.cs中的代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
  
    protected void Button1_Click(object sender, EventArgs e)
    {
        WebService objweb = new WebService();
        this.Label1.Text = "WebService返回的信息是:"+objweb.HelloWorld();
    }
}
WebService.asmx中的代码:
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;
using System.Data;
using System.Text;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService()]
public class WebService : System.Web.Services.WebService {
    public WebService () {
        //如果使用设计的组件,请取消注释以下行
        //InitializeComponent();
    }
    [WebMethod]
    public string HelloWorld() {
        return "Hello World";
    }
}
这样就可以实现对WebService的调用了;
原创粉丝点击