Dans mon application, j'ai le contrôleur nommé Snippets
à la fois dans la zone par défaut (dans l'application racine) et dans ma zone appelée Manage
. J'utiliser des itinéraires T4MVC et personnalisés, comme ceci:T4MVC et noms de contrôleurs dupliqués dans différentes zones
routes.MapRoute(
"Feed",
"feed/",
MVC.Snippets.Rss()
);
Et je reçois cette erreur:
Multiple types were found that match the controller named 'snippets'. This can happen if the route that services this request ('{controller}/{action}/{id}/') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.
The request for 'snippets' has found the following matching controllers: Snippets.Controllers.SnippetsController Snippets.Areas.Manage.Controllers.SnippetsController
Je sais qu'il ya des surcharges pour MapRoute
qui prennent en argument namespaces
, mais il n'y a pas de telles surcharges avec Support T4MVC. Peut-être qu'il me manque quelque chose? La syntaxe possible peut être:
routes.MapRoute(
"Feed",
"feed/",
MVC.Snippets.Rss(),
new string[] {"Snippets.Controllers"}
);
ou, il me semble tout à fait bon d'avoir l'espace de noms comme propriété T4MVC:
routes.MapRoute(
"Feed",
"feed/",
MVC.Snippets.Rss(),
new string[] {MVC.Snippets.Namespace}
);
Merci à l'avance!