2016-04-25 10 views
-2

Ich benutze asp.net Kern, und mein Controller Name ist "ConsultasController".Asp.net Erraten Controller Name

Wenn auf localhost:5000\consultas zeigen, ein Fehler sagt, dass es keine Route für diese gibt.

Also, wenn ich zu localhost:5000\consultum ändern, funktioniert es.

Warum das passiert?

+6

Wir müssen wissen, wie Sie Ihre Routen konfiguriert sind und was 'RouteAttribute's Sie verwendet haben. – vcsjones

+0

Zeit für Sie zu lesen lesen https://msdn.microsoft.com/en-us/library/cc668201(v=vs.100).aspx –

+0

Ich habe keine anderen Konfigurationen als Standard vorgenommen. – Beetlejuice

Antwort

1

Hier sind ein paar Dinge zu prüfen, wie ohne eine Untergliederung Ihrer Routen und wie Ihre Controller-Erklärungen aussehen, würden wir einfach raten, was könnte das Problem sein.

Überprüfen Sie Ihre Standard-Routing

Solange Sie die Standard-Routen in Ihrer Anwendung verwenden, sollten noch ASP.NET MVC den Namen Ihres Controllers verwenden, um die Route zu bestimmen:

routes.MapRoute(
     name: "default", 
     template: "{controller}/{action}", 
     defaults: new { controller = "Home", action = "Index" }); 

Haben Sie andere benutzerdefinierte Routen definiert? Oder ist Ihre Standardroute auf den falschen Standort (d. H. Consultum anstelle von Consultas)?

Stellen Sie sicher, Ihre Namensgebung ist korrekt

Wenn Sie den Namen Ihres Controllers geändert, werden Sie sicherstellen wollen, dass Sie sowohl den Namen der Klasse ConsultasController und den Namen der Datei geändert (ConsultasController.cs) und nicht nur das eine oder das andere.

Beliebig Route Attribute?

Haben Sie zusätzlich bestimmte Routenattribute für diesen Controller definiert, die das vorhandene Standardrouting überschreiben könnten? Sie wollen sicherstellen, dass Ihr ConstultasController nicht zu ConsultumController zeigt:

[Route("Consultum")] 
public class ConsultasController : Controller 
{ 
     /* Your code here */ 
}