Posted By

dancerjude on 06/08/12


Tagged

controller aspnet MVC routing


Versions (?)

ASP.NET MVC Controllers in subfolder


 / Published in: C#
 

Per gestire le situazioni in cui รจ necessario avere dei controller in una subfolder (ad esempio /api/v1/{controller}/{action}/{id}, utilizzare il seguente codice nella "global.asax.cs" nel metodo "RegisterRoutes".

  1. #region UTILIZZO DI SUBFOLDER PER I CONTROLLERS (AD ESEMPIO "API/V1") (=> DISABLED)
  2. //********************************************************************************************************************************
  3. // PER GESTIRE DEI CONTROLLER IN UNA SUBFOLDER UTILIZZARE UNA MAPROUTE DEL GENERE; NELL'ESEMPIO DI SEGUITO, UN CONTROLLER DI TEST
  4. // (AD ESEMPIO APITEST) DOVREBBE ESSERE POSIZIONATO NELLA FOLDER "CONTROLLERS/API/V1" E CHIAMARSI "APITESTCONTROLLER"
  5. routes.MapRoute(
  6. "DefaultApi",
  7. "api/v1/{controller}/{action}/{id}",
  8. new { controller = "Home", action = "Index", id = RouteParameter.Optional }
  9. );
  10. // INOLTRE, IL CONTROLLER DA UTILIZZARE VA ESCLUSO DALLE CHIAMATE DIRETTE, QUESTO PER EVITARE CHE SIA POSSIBILE CHIAMARLO IN DUE
  11. // MODI DIVERSI:
  12. // 1) - /API/V1/APITEST/ACTION/{ID}
  13. // 2) - /APITEST/ACTION/{ID}
  14. // UTILIZZANDO LA IGNORE ROUTE DI SEGUITO, SARA' QUINDI POSSIBILE SOLO LA 1)
  15. routes.IgnoreRoute("apitest/{*pathInfo}");
  16. //********************************************************************************************************************************
  17. #endregion

Report this snippet  

You need to login to post a comment.