从web服务获取数据c#javascript ajax
问题描述:
我真的需要从我的web服务获取数据的帮助,但我得到的是“内部服务器错误”。期望的结果是能够有一个web服务返回数据到我的JavaScript函数。从web服务获取数据c#javascript ajax
昨天我成功地调用了web服务,但无法从中获取数据。
下面是我的javascript代码,我明白在客户端上执行
function Test(myid) {
var projects;
var opt = document.getElementById(myid);
var constring = '<%=this.ConnectionText %>';
document.getElementById("Text1").value = opt.value;
$.ajax({
type: 'GET',
url: 'Overview.aspx/ExecuteSelectListBox',
contentType: "application/json;charset=utf-8",
dataType:"json",
success: function (data) {
projects = data.d;
},
error: function (requeset, status, error) {
alert(error);
}
});
}
如果成功的则项目应成为“世界你好”
下面是我的C#代码我明白在服务器上执行。 但是,我不认为我的服务器上的功能被调用。如果我用别的东西替换Overview.aspx,我会从服务器“找不到”而不是“内部服务器错误”。 但“executiontelistbox”本身我可以打电话什么,我仍然得到“内部服务器错误”,而不是“找不到”。
[System.Web.Script.Services.ScriptService]
public class AjaxWebService : System.Web.Services.WebService
{
[System.Web.Services.WebMethod(EnableSession = true)]
/**************************************************
*** Returns a datatable with projectnames. ***
*************************************************/
public static string ExecuteSelectListBox()
{
return "hello world";
}
}
因此所需的问题是要能够从C#编写的一个Web服务中检索数据。在本例中,c#和javascript实际上都是同一网页的一部分。我保持简约。我希望其他人也可以使用它,作为一个基本的例子,你如何能够从你的网络服务器获取数据。在未来,我会从服务器进行数据库调用并发送回客户端,但现在我甚至不能想到这一点,因为我甚至无法得到“hello world”的工作:)
我会很感激如果任何人可以帮助!我试过之前发布过这个帖子,但被关闭了“搁置”。
答
我会看看下面的教程,并使用WebApi而不是System.Web.WebService。你让自己变得相当困难。
http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api
目前你的要求JSON,但林不知道你是否真的返回JSON,但也许XML?
嗯你的例子工作...但不是当我尝试做同样的我的网页....也许不同的是,我的网页是一个网页,你的例子是一个应用程序。我试图做一个精确的副本global.asax,但它说,当我“玩”我的网页时,global.asax不包含有效数据。它和你的应用程序中的例子完全一样...... – 2015-04-02 10:22:08
我想让它在我的项目中工作,所以我拿了你的例子,并将我的5个网页和一些C#类的全部代码添加到它:)现在,它的工作原理。背后是我真的不知道为什么它没有工作,和我的项目和你的例子有什么不同。 – 2015-04-02 15:12:06
webapi中的示例可以用于应用程序和Web项目。例如在一个MVC项目中,你可以使用它。我很高兴你有它的工作。 WebApi类更现代化,你需要做更少的工作来完成任务。 – Robin 2015-04-03 09:19:27