我有一个包含区域的基本项目,我已在此区域注册了我的路线并使用了小写URL扩展。这是代码:
using System.Web.Mvc;
using Web.Modules;
namespace Web.Areas.Services
{
public class ServicesAreaRegistration : AreaRegistration
{
public override string AreaName
{
get
{
return "Services";
}
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRouteLowercase(
"Services", // Route name
"services/{controller}/{action}/{id}", // URL with parameters
new { controller = "Services", action = "Index", id = UrlParameter.Optional }, // Parameter defaults
new string[] { "Web.Areas.Services" }
);
}
}
}
但现在当我转到http://localhost/services/home
时,它会向我显示我的HomeController的索引视图,我该怎么做才能解决这个问题?我已经添加了名称空间并将区域添加到routedata。
感谢您的帮助
答案 0 :(得分:1)
好像你没有文件夹区域/服务/视图/主页或该文件夹中的索引视图。在这种情况下,ASP.NET MVC将回退到Views / Home(无区域)文件夹中显示索引视图。如果您需要为您的区域提供不同的视图,则需要在区域的Views / [Controller Name]文件夹(或者当然是Shared文件夹)中创建它。