我有一个带导航栏的master.cshtml
。我的第一个链接是另一个视图,ProjectManagement
<li><a href="~/Views/ProjectManagement.cshtml">Project Management</a></li>
master.cshtml
位于/Views/Shared/_master.cshtml
ProjectManagement
位于/Views/ProjectManagement.cshtml
每当我点击链接时我都会:
描述:HTTP 404.您正在查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。
请求的网址:/Views/ProjectManagement.cshtml
我使用了错误的路径,还是应该尝试以不同方式访问该页面?
编辑:我能够通过使用它来接近:
<a href="@Html.Action( "ProjectMgmt", "Service", "Project Management" )">
唯一的问题是它现在将页面放入导航栏!我只希望它链接到页面,这次我可以做什么?
答案 0 :(得分:2)
您不直接链接到视图,而是链接到操作。动作作为控制器上的方法实现;这些方法使用路由系统定位。
示例控制器:
public class ServicesController : Controller
{
[HttpGet]
public ActionResult ProjectManagement()
{
// automatically locates the correct view; you can also explicitly
// pass the path to the view
return View();
}
}
您现在可以右键单击操作方法名称(“ProjectManagement”)并选择“添加视图”。这将帮助您创建一个新视图,并将其放在视图引擎可以自动找到的位置。
视图通常放在“Views / [ControllerName] /”文件夹中,例如“查看/服务/ ProjectManagement.cshtml”。
要在导航栏中链接到此操作方法,您可以使用辅助方法ActionLink()
。
<li>@Html.ActionLink( "Project Management", "ProjectManagement", "Services" )</li>