Я только что попытался создать решение на VS 2010, чтобы практиковать использование служб REST с JQuery.
Я использовал шаблон приложения службы WCF REST. Он создал класс, который я назвал Services.cs
с методом, который я хотел бы вызвать:
[WebGet(UriTemplate = "")]
public List<SampleItem> GetCollection()
{
SampleItem item;
List<SampleItem> lst = new List<SampleItem>();
for (int i = 0; i < 12; i++)
{
item = new SampleItem { Prom = 1960 + i, Name = string.Format("Name {0}", i.ToString()) };
lst.Add(item);
}
return lst;
}
Global.asax.cs выглядит так:
void Application_Start (отправитель объекта, EventArgs e)
{
RegisterRoutes ();
}
private void RegisterRoutes()
{
// Edit the base address of Service1 by replacing the "Service1" string below
RouteTable.Routes.Add(new ServiceRoute("", new WebServiceHostFactory(), typeof(Service)));
}
Затем я создал новый пустой веб-сайт asp.net, добавил файлы jquery и т. Д. На странице default.htm мне нравится вызывать GetCollection, поэтому я добавил следующий код jquery.
$(function () {
var serviceUrl = ??????
$.ajax({
url: serviceUrl,
type: 'POST',
data: '{}',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (colD) {
var col = colD.d;
}
});
});
Какой УРЛ плечо я положил? особенно мне трудно разобраться с портом моего хоста.
Я пробовал http://localhost:5187/KendoRestService/GetCollection, Где KendoRestService - это имя проекта REST и пространство имен на service.cs. Любая помощь будет принята с благодарностью.