È necessario utilizzare Attribute Routing, una caratteristica introdotta in MVC 5.
Basato sul tuo esempio si dovrebbe modificare il controller come segue:
[RoutePrefix("example-name")]
public class example_nameController : Controller
{
// Route: example-name/Index
[Route]
public ActionResult Index()
{
return View();
}
// Route: example-name/Contact
[Route]
public ActionResult Contact()
{
ViewBag.Message = "Your contact page.";
return View();
}
}
Utilizzando l'attributo RoutePrefix
in cima il tuo controller ti consentirà di definire il percorso sull'intero controller.
Come detto in precedenza, questa funzione è disponibile in modo nativo in MVC 5, se si utilizza una versione precedente di MVC è necessario aggiungere il seguente pacchetto NuGet: AttributeRouting e aggiungere il seguente utilizzando nel controller:
using AttributeRouting;
using AttributeRouting.Web.Mvc;
Se si dispone di un altro controller chiamato
example_name2Controller
e si desidera aggiungere un collegamento ipertestuale che collegano ad esso facilmente si può fare come segue:
@Html.ActionLink("Go to example-name2", "Index", "example_name2");
è don 'T bisogno di chiamare un'azione che reindirizza al example_name2Controller
, ma se avete bisogno di farlo in altre occasioni, si può fare in questo modo:
public ActionResult RedirectToExample_Name2Controller()
{
return RedirectToAction("Index", "example_name2");
}
Ciao, per il reindirizzamento si prega di vedere la mia risposta aggiornamento – user449689