c# - 使用区域时应用程序找不到 View

标签 c# asp.net-mvc asp.net-mvc-5

我正在尝试区域,并且有一个调用操作的 ajax 调用 但是当尝试返回 Partialview 时,它说找不到它:

enter image description here

UserAreaRegistration.cs:

public class UsersAreaRegistration : AreaRegistration 
{
    public override string AreaName 
    {
        get 
        {
            return "Users";
        }
    }

    public override void RegisterArea(AreaRegistrationContext context) 
    {
        context.MapRoute(
            name: "User",
            url: "User",
            defaults: new { controller = "User", action = "CreateUser" }
        );
        context.MapRoute(
            "Users_default",
            "Users/{controller}/{action}/{id}",
            new { action = "Index", id = UrlParameter.Optional }
        );
    }
}

在我的用户 Controller 中我尝试过:

[RouteArea("User")]
public class UserController : Controller
{}

Action :

    public ActionResult GetUsrForm()
    {
        var model = new UserMod();

        return PartialView("testUUU");
    }

但我仍然得到:

The partial view 'testUUU' was not found or no view engine supports the searched locations. The following locations were searched: ~/Views/User/testUUU.aspx ~/Views/User/testUUU.ascx ~/Views/Shared/testUUU.aspx ~/Views/Shared/testUUU.ascx ~/Views/User/testUUU.cshtml ~/Views/User/testUUU.vbhtml ~/Views/Shared/testUUU.cshtml ~/Views/Shared/testUUU.vbhtml

我错过了什么?

最佳答案

我之前在处理区域时遇到了同样的问题,我通过在 Ajax URL 中添加区域名称来解决它

$.ajax({
    url: 'Users/user/GetUsrForm',
    success: function (data) {
        //
    }
});

行动

public ActionResult GetUsrForm()
{
    var model = new UserMod();

    return PartialView("~/Areas/Users/Views/User/testUUU.cshtml");
}

关于c# - 使用区域时应用程序找不到 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40529518/

相关文章:

asp.net-mvc - 无法定义两个对象之间的关系,因为它们附加到不同的ObjectContext对象mvc 2

c# - 在 ASP.Net MVC5 中从两个 EF 模型创建 ViewModel

asp.net-mvc - 是否有使用 ASP.NET MVC 5 Html.EditorFor() 和 Bootstrap 3.0 的解决方案?

c# - 连接两个列表时如何处理重复的键?

c# - 如何在设置文件中保存对象列表?

asp.net-mvc - MVC 多表单提交

javascript - 带有 jquery ui 选项卡的 MVC 4

google-chrome - Windows 身份验证在 Chrome 中不起作用

c# - 验证美国的电话号码是否存在

c# - 如果我们有单一操作,使用异步操作的目的是什么?