【发布时间】:2014-09-17 21:07:42
【问题描述】:
我正在使用 ASP.NET MVC 5 开发一个应用程序。我希望我的应用程序具有如下所示的路由:
http://www.myserver.com/my-category
请注意路线中的破折号 (-)。我目前有一个名为 MyCategoryController 的控制器。它是这样定义的:
namespace MyApp.Controllers
{
[RoutePrefix("my-category")]
public class MyCategoryController : Controller
{
// GET: List
public ActionResult Index()
{
return View();
}
}
}
视图位于/Views/My-Category/Index.cshtml。当我尝试在浏览器中访问 http://www.myserver.com/my-category 时,我收到一条错误消息:
找不到资源。
我设置了一个断点,我注意到断点没有命中。然后我在浏览器中输入http://www.myserver.com/mycategory,我收到一条错误消息:
未找到视图“索引”或其主视图,或者没有视图引擎支持搜索到的位置。搜索了以下位置:
~/Views/mycategory/Index.cshtml
~/Views/mycategory/Index.vbhtml
~/Views/Shared/Index.cshtml
~/Views/Shared/Index.vbhtml
如何设置我的 ASP.NET MVC 以便
a) 我可以访问http://www.myserver.com/my-category 和
b) 从/Views/my-category/Index.cshtml加载视图
【问题讨论】:
-
为什么没有破折号的名为“MyCategory”的目录?
-
确实,你为什么在乎文件夹名称是存储视图的位置。
-
如果文件夹与路由不匹配真的让您感到困扰,请使用下划线
标签: c# asp.net-mvc