You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Admin区域About控制器Insert页面POST请求出现404错误的排查求助

Admin区域About控制器Insert页面POST请求出现404错误的排查求助

大家好,我最近遇到一个头疼的问题:在提交Admin区域下About控制器的Insert页面表单时,一直报404错误。我第一反应是路由配置出问题了,但翻来覆去检查代码也没看出哪里不对,想请各位帮忙排查一下问题所在。

我的路由配置代码

app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});

app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "areas",
        pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}"
    );
});

About控制器代码

[Area("Admin")]
public class AboutController : Controller
{
    private readonly IAboutService _aboutService;
    private readonly IMapper _mapper;
    IWebHostEnvironment _env;

    public AboutController(IAboutService aboutService, IMapper mapper, IWebHostEnvironment env)
    {
        _aboutService = aboutService;
        _mapper = mapper;
        _env = env;
    }

    public IActionResult AboutList()
    {
        List<ListAboutViewModel> list = new List<ListAboutViewModel>();
        list = _mapper.Map<List<ListAboutViewModel>>(_aboutService.TGetListAll());
        return View(list);
    }

    [HttpGet]
    public IActionResult Insert()
    {
        return View();
    }

    [HttpPost]
    public IActionResult Insert(CreateAboutViewModel createAboutViewModel, List<IFormFile> files)
    {
        About viewModel = new About()
        {
            Description=createAboutViewModel.Description,
            ShortDescription=createAboutViewModel.ShortDescription,
            Title=createAboutViewModel.Title
        };

        bool imageResult;
        string imagePath = Upload.ImageUpload(files, _env, out imageResult);

        if (imageResult)
            viewModel.ImageUrl = imagePath;
        else
        {
            ViewBag.Message = imagePath;
            return View();
        }

        if (ModelState.IsValid)
        {
            _aboutService.TAdd(viewModel);
            RedirectToAction("AboutList");
        }
        return View();
    }
}

Insert视图代码

@model CreateAboutViewModel

@{
    ViewData["Title"] = "Insert";
    Layout = "~/Areas/Admin/Views/Shared/_Layout.cshtml";
}

<div class="col-md-12">
    <div class="card">
        <div class="card-header">
            <h4>Hakkımızda Sayfası Oluşturma</h4>
        </div>
        <div class="card-body">
            <form asp-area="Admin" asp-controller="About" asp-action="Insert" method="post" enctype="multipart/form-data">
                <div class="group-form">
                    <label class="form-label">Başlık</label>
                    <input asp-for="Title" class="form-control" placeholder="Başlık Giriniz">
                </div>
                <div class="group-form">
                    <input type="file" asp-for="ImageUrl" name="files" accept=".png, .jpg, .jpeg" />
                </div>
                <div class="group-form">
                    <textarea asp-for="ShortDescription" class="form-control" rows="3" placeholder="Hakkımızda kısa detay girişi yapınız."></textarea>
                </div>
                @* <div class="group-form">
                    <div class="ckmain">
                        <div class="ckeditor-menu"></div>
                        <div id="crowenkeditor">
                        </div>
                    </div>
                </div>*@
                <div class="group-form">
                    <textarea asp-for="Description" class="form-control" rows="3" placeholder="Hakkımızda kısa detay girişi yapınız."></textarea>
                </div>
                <button class="btn btn_primary" type="submit">Ekle</button>
            </form>
        </div>
    </div>
</div>

我已经在相关论坛搜索过,但没找到能解决问题的答案,恳请各位帮忙分析一下可能的问题点,谢谢大家!

备注:内容来源于stack exchange,提问作者Mukremin Buyukkulekci

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:53:05