Neu in der Welt der Web-API und ich kann scheinbar keine benutzerdefinierte Ansicht zur Anzeige erhalten. Ich habe die Grundlagen gemacht, habe eine Methode in meinem Controller erstellt, die scheinbar korrigiert wird, wo ich sie anrufe. Ich bin mit MVC vertrauter und frage mich, ob ich etwas Grundlegendes vermisse? Die Ansicht gibt immer einen Fehler zurück, auf den ich nicht zugreifen kann.Anzeigen einer anderen Ansicht in ASP.Net-Web-API-Client
Die Action, in der generierten Homecontroller:
[HttpGet]
public ActionResult SpotDetails()
{
ViewBag.Title = "Spot Details";
return View();
}
Der Link in dem Menü aufzurufen:
<ul class="nav navbar-nav">
<li>@Html.ActionLink("SHOR //", "Index", "Home", new {area = ""}, null)</li>
<li>@Html.ActionLink("Index", "Index", "Home", new {area = ""}, null)</li>
<li>@Html.ActionLink("Spot Profile", "SpotDetails", "Home", new {area = ""}, null)</li>
<li>@Html.ActionLink("API", "Index", "Help", new {area = ""}, null)</li>
</ul>
ich die Links auf den Index sagen sollte und die api Hilfeseiten perfekt funktionieren .
Das ist mein RouteConfig ist, falls es an Schuld, ich habe es gar nicht berührt:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
Und schließlich mein WebApiConfig:
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
config.Formatters.Remove(config.Formatters.XmlFormatter);
config.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore;
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
Bearbeiten - die Fehlermeldung, wenn der Link wird geklickt:
Server Fehler in '/' Anwendung.
Die Ressource kann nicht gefunden werden.
Beschreibung: HTTP 404. Die gesuchte Ressource (oder eine ihrer Abhängigkeiten) wurde möglicherweise entfernt, ihr Name wurde geändert oder ist vorübergehend nicht verfügbar. Bitte überprüfen Sie die folgende URL und vergewissern Sie sich, dass sie richtig geschrieben ist.
Angeforderte URL:/Home/SpotDetails
Was sind die Details des Fehlers? –
@StephenMuecke Hinzugefügt den genauen Fehler – ZippyPippy
Sieht gut aus für mich. Sind Sie sicher, dass sich SpotDetails.cshtml in/Views/Home/befindet und genau so geschrieben wird? – smoore4