2010-05-19 3 views
1

Je suis nouveau routage dans aspnet mvc .. j'ai le code suivant: Action Controlleroù utiliser itinéraire nom de routage dans aspnet mvc

 

public ActionResult SchoolIndex() 
{ 
    return View(SchoolRepository.GetAllSchools()); 
} 
 

ici est le routage

 

routes.MapRoute(
"School",            // Route name 
"{controller}/{action}/{id}",       // URL with parameters 
new { controller = "School", action = "SchoolIndex", id = "" }); // Parameter defaults 

 

quand j'entre "localhost/school" dans la barre d'adresse, il donne l'erreur 404 à la place il devrait acheminer mon action "schoolIndex"

J'ai donné le nom de route comme "école" où il est utilisé?

+0

Vérifiez que le nom de votre contrôleur est 'SchoolController' ou non –

+0

oui le nom du contrôleur est "schoolcontroller" – FosterZ

Répondre

1

Vous ne pouvez pas spécifier un nom de route dans un URI, jamais. Les noms de routes sont par exemple pour Html.RouteLink(). RouteLink vous permet de spécifier exactement l'itinéraire que vous souhaitez, même s'il ne s'agit pas de la première route correspondante pour les arguments que vous passez.

Les URI sont appariés dans l'ordre. La première route correspondante gagne.

Lisez my post on routing pour plus de détails.