如何操作 link 具有多个文件夹的路由,而不仅仅是控制器和操作?
How to action link a route with several folders, not only controller and action?
我知道我可以link像这样的路线:
// GET: Home
[Route("Home/About/{text}/{a}/{b?}/{c?}")]
public ActionResult About(string text, string a, string b, string c)
{
ViewBag.Message = text + a + b + c;
return View();
}
通过这样做:
@Html.ActionLink("GO", "About", "Home", new {text = "Test", a="value1",b="value2",c="value3" },null)
但是如果我想采取 link 这样的操作怎么办?
// GET: Home
[Route("api/[controller]/[action]/{text}/{a}/{b?}/{c?}")]
public ActionResult About(string text, string a, string b, string c)
{
ViewBag.Message = text + a + b + c;
return View();
}
提前致谢!
将路线名称添加到您的操作中:
[Route("api/[controller]/[action]/{text}/{a}/{b?}/{c?}", Name ="AboutRoute")]
public ActionResult About(string text, string a, string b, string c)
{
ViewBag.Message = text + a + b + c;
return View();
}
并使用名称:
@Html.RouteLink("GO","AboutRoute", new {
text = "Test",
a="value1",
b="value2",
c="value3" } )
我使用 Visual studio 对其进行了测试,它工作正常。
顺便说一下,您可以通过两种方式调用此操作。
1.Using路线Link和路线名称
- 使用另一个输入控件或 httpclient 或 ajax 或 url 的邮递员
.../api/..controllerName../..actionName../..路由值...
我知道我可以link像这样的路线:
// GET: Home
[Route("Home/About/{text}/{a}/{b?}/{c?}")]
public ActionResult About(string text, string a, string b, string c)
{
ViewBag.Message = text + a + b + c;
return View();
}
通过这样做:
@Html.ActionLink("GO", "About", "Home", new {text = "Test", a="value1",b="value2",c="value3" },null)
但是如果我想采取 link 这样的操作怎么办?
// GET: Home
[Route("api/[controller]/[action]/{text}/{a}/{b?}/{c?}")]
public ActionResult About(string text, string a, string b, string c)
{
ViewBag.Message = text + a + b + c;
return View();
}
提前致谢!
将路线名称添加到您的操作中:
[Route("api/[controller]/[action]/{text}/{a}/{b?}/{c?}", Name ="AboutRoute")]
public ActionResult About(string text, string a, string b, string c)
{
ViewBag.Message = text + a + b + c;
return View();
}
并使用名称:
@Html.RouteLink("GO","AboutRoute", new {
text = "Test",
a="value1",
b="value2",
c="value3" } )
我使用 Visual studio 对其进行了测试,它工作正常。
顺便说一下,您可以通过两种方式调用此操作。
1.Using路线Link和路线名称
- 使用另一个输入控件或 httpclient 或 ajax 或 url 的邮递员 .../api/..controllerName../..actionName../..路由值...