Ich versuche, eine Web-API einzurichten, die RESTful-Dienste verwenden wird. Ich folge diesem Leitfaden.Einrichten einer WebAPI, Fiddler-Antwort ist eine HTML-Seite
Getting Started with ASP.NET Web API 2 (C#)
verfolge ich auch dieses Handbuch für Entity Framework einrichten.
Getting Started with Entity Framework 6 Code First using MVC 5
Wenn ich ein Composer
in Fiddler laufen. Ich erhalte die Webseite für Home.aspx
Hier ist der Code für meinen Controller ist
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using WebServer.z_Repository;
using WebServer.z_Models;
namespace WebServer.z_Controllers
{
[Route("api/Locations")]
public class LocationsController : ApiController
{
// GET api/<controller>
static IlocationsRepository LocationsRepo;
public LocationsController(IlocationsRepository _repo)
{
if (_repo == null) { throw new ArgumentNullException("_repo"); }
LocationsRepo = _repo;
}
[HttpGet]
public IEnumerable<Location> GetAll()
{
return LocationsRepo.GetAll();
}
}
}
ich auf den GetAll()
einen Haltepunkt setzen und dass Haltepunkt wurde nie getroffen. Dies sagt mir, dass der Controller nicht irgendwo registriert ist. Aber der Führer sagt nichts darüber aus, wo er registriert werden sollte.
Ich habe eine Global.asax.cs
Seite erstellt, obwohl dies nicht in der Anleitung ist. Aber ich bin mir nicht sicher, wohin ich von hier aus gehen soll.
-Code für Global.asax.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.SessionState;
namespace WebServer
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
}
protected void Session_Start(object sender, EventArgs e)
{
}
protected void Application_BeginRequest(object sender, EventArgs e)
{
}
}
}
Hier ist ein Ausschnitt der Antwort im Fiddler zeigt
ich nicht sicher bin, wo die 'GlobalConfiguration' bekommen in Intellisense zu zeigen. Brauche ich eine using-Anweisung in 'Global.cs' –
Haben Sie die Nuget-Pakete für WebAPI installiert? Wie auch immer, wenn Sie "WebApiConfig.cs" nicht haben, müssen Sie eines erstellen. Ja, Sie benötigen eine using-Anweisung in der globalen 'System.Web.Http'. Sie sollten wirklich den Artikel lesen, der in der Antwort verbunden ist. – Nkosi
Hat alles gesagt, was du gesagt hast. Definitiv Fortschritte machen, aber Fiddler hat einen 500 internen Serverfehler. Ich werde dies als die Antwort markieren. –