Cyr*_*ril 0 asp.net-mvc controller asp.net-mvc-5.2
错误地,我在Models文件夹中创建了我的HomeController.cs.这是我的webapplication的唯一控制器.视图路径为:Views/Home/Index.cshtml
当我运行应用程序时,没有问题,它可以找到控制器.我也尝试将它移动到像Views/Home/HomeController.cs这样的子文件夹,但仍然没有问题.
我找不到一个路由或配置,告诉应用程序控制器在哪里,所以我想知道它是如何工作的......
MVC查找Controller在尝试将路由与控制器匹配时继承的任何内容,控制器所在的位置或控制器所在的命名空间无关紧要.
对于一个有趣的小实验,这将生成错误"发现多个类型匹配名为'Home'的控制器......",因为在不同的命名空间中有两个具有相同名称的控制器,并且MVC不知道哪一个到使用.
namespace Something
{
public class HomeController : Controller
{
public ActionResult Index()...
}
}
namespace OrOther
{
public class HomeController : Controller
{
public ActionResult Index()...
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
646 次 |
| 最近记录: |