Я пытаюсь создать простой сервис REST в C # в Visual Studio. Я получаю следующую общую ошибку при запуске и переходе к http://localhost:63735/Service1.svc/Tutorial:
- " Ошибка сервера в приложении '/'. Ресурс не найден. HTTP
404"
Когда я просто перехожу на http://localhost:63735, отображается стандартная страница «ASP> NET - это бесплатная веб-инфраструктура для создания великолепных веб-сайтов с использованием HTML, CSS и JavaScript».
Консоль разработчика, похоже, не дает никакой дополнительной информации. Не изменяется при смене браузера.
Я следовал руководству на https://www.guru99.com/restful-web-services.html, чтобы создать этот простой сервис REST. Чего мне не хватает?
Service1.svc.cs:
namespace WebApplication1
{
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Service1
{
private static List<string> lst = new List<string>(new String[] {"Arrays","Queues","Stacks"});
[WebGet(UriTemplate="/Tutorial")] //GET at /Tutorial (for the following method)
public String GetAllTutorial()
{
int count = lst.Count;
String TutorialList = "";
for (int i = 0; i < count; i++)
TutorialList = TutorialList + lst[i] + ",";
return TutorialList;
}
[WebGet(UriTemplate = "/Tutorial/{Tutorialid}")]
public String GetTutorialbyID(String Tutorialid)
{
int pid;
Int32.TryParse(Tutorialid, out pid);
return lst[pid];
}
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,UriTemplate = "/Tutorial", ResponseFormat = WebMessageFormat.Json, BodyStyle =WebMessageBodyStyle.Wrapped)]
public void AddTutorial(String str)
{
lst.Add(str);
}
[WebInvoke(Method = "DELETE", RequestFormat = WebMessageFormat.Json, UriTemplate = "/Tutorial/{Tutorialid}", ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped)]
public void DeleteTutorial(String Tutorialid)
{
int pid;
Int32.TryParse(Tutorialid, out pid);
lst.RemoveAt(pid);
}
}
}