2011-07-15 5 views
1

J'ai la structure du projet suivantproblème avec asp.net mvc routage

http://img13.imageshost.ru/img/2011/07/15/image_4e1fd08fe0c5d.png

Code UserController:

public class UserController : Controller 
    { 

     public ActionResult Login() 
     { 
      return View(ValidationResult.OK); 
     } 
    } 

Code AdminController:

public class AdminController : Controller 
    { 
     public ActionResult Login() 
     { 
      return View(ValidationResult.OK); 
     } 
} 

Routes

public static void RegisterRoutes(RouteCollection routes) 
     { 
      routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

      routes.MapRoute(
       "Default", // Route name 
        "{controller}/{action}/{id}", // URL with parameters 
       new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
      ); 

     } 

Lorsque je tente de naviguer vers http://localhost:2334/admin/login je reçois « Erreur du serveur dans '/ admin/login' application. La ressource ne peut pas être trouvée. URL demandée:/admin/login/»

Lorsque je tente de naviguer vers http://localhost:2334/user/login je reçois ** "Erreur de serveur dans '/ admin/login' Application" Erreur HTTP 404 - Non trouvé **

..

Je ne comprends rien :(

+0

Sous quel serveur exécutez-vous cela? Avez-vous essayé de le recompiler et de le redémarrer? – gw0

+0

serveur de développement asp.net – VoimiX

+0

Vérifiez votre _ViewStart.cshtml dans le dossier Views. – Peanutbag

Répondre

0

Je ne sais pas, sans doute stupide hypothèse: Avez-vous défini des vues appropriées pour vos contrôleurs Vérifiez ceci:

/Views/Admin/Login.cshtml 
/Views/User/Login.cshtml 
0

d'abord tr y pour créer des pages html sur chaque méthode de contrôleur par un clic droit sur la méthode d'action et ajouter la vue ...

Puis à partir de l'explorateur de solution app_start -> routeconfig définir votre page par défaut qui gona run.

routes.MapRoute(
      "YourControllername", // Route name 
       "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Yourcontrollername", action = "methodname", id = UrlParameter.Optional } 
     ); 

vous ne avez pas besoin Rappelez-vous d'écrire contrôleur derrière votre contrôleur Home en routeconfig pour ex ajouter juste à la maison si vous avez HomeController.

et d'ajouter une vue après la création de la méthode d'index qui fonctionnera à coup sûr.