Я пытаюсь вызвать веб-службу ASMX с помощью JavaScript и AJAX Control Toolkit в Visual Studio 2010.
Я получаю сообщение об ошибке, так как SampleWebService не определен в консоли Fire Fox Error Console.
Раньше это работало довольно хорошо в VS 2008, но то же самое не работает в VS 2010
Есть ли какие-либо изменения в способе вызова веб-службы ASMX с использованием AJAXControl Toolkit и JavaScript в VS 2010.?
Я использую VS 2010 Premium с SP1.
Я также добавил ссылку на сервис для ASMX.
После кода обслуживания ASMX:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class SampleWebService : System.Web.Services.WebService {
public SampleWebService () {
//Uncomment the following line if using designed components
//InitializeComponent();
}
[WebMethod]
public string HelloWorld() {
return "Hello World = "+DateTime.Now.ToString();
}
}
Код JavaScript:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="~/SampleWebService.asmx" />
</Services>
</asp:ToolkitScriptManager>
<input id="btn" type="button" value="Click" onclick="javascript:fnBtnClick();" />
<script type="text/javascript">
function fnBtnClick() {
alert("fnBtnClick");
SampleWebService.HelloWorld(onSuccess,onFailure);
}
function onSuccess(result) {
alert("onSuccess = "+result);
}
function onFailure(result) {
alert("onFailure = " + result);
}
</script>
</asp:Content>