AJAX调用区域控制器



我正在尝试从Ajax调用控制器,但我得到了:

无法加载资源:服务器以404()状态响应

AJAX正在从管理员视图调用admin Controller。我可以查看管理页面,但是我无法从Ajax或任何其他方法调用Getall()和GetAllusers()。

在启动中

        app.UseMvc(routes =>
        {
            routes.MapRoute("areaRoute",template:"{area:exists}/{controller=Admin}/{action=Index}/{id?}");
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
        });

在AdminController

namespace Project.Areas.Admin.Controllers
{
    [Area("Admin")]
    [Authorize(Policy = "AdminOnly")]
    public class AdminController : Controller
    {    
        public IActionResult Index()
        {
            return View();
        }
        public AdminController()
        {        
        }
        [HttpGet("GetAll/{page}")]
        public IActionResult GetAll(int? page)
        {           
        }
        [HttpGet("GetAllUsers/{page}")]
        public IActionResult GetAllUsers(int? page)
        {         
        }
    }
}

ajax:

@section Scripts{ 
    @await Html.PartialAsync("_ValidationScriptsPartial")
    <script>
        $(function () {
            $.ajax({
                type: "GET",
                url: "/Admin/GetAll",                
                traditional: true,
                success: function (view) {
                    $("Result").html(view)
                }
            });
            $.ajax({
                type: "GET",
                url: "/Admin/GetAllUsers",
                traditional: true,
                success: function (view) {
                    $("userResult").html(view)
                }
            });
        });
    </script>
}

在URL中,您需要用户/{areaname}/{controlerName}/{actionMethod}

 $.ajax({
            type: "GET",
            url: "/Admin/Admin/GetAllUsers",
            traditional: true,
            success: function (view) {
                $("userResult").html(view)
            }
        });

相关内容

  • 没有找到相关文章

最新更新