Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 从ASP.NET Core 2.2迁移到3.1,出现错误404_Asp.net Core_Asp.net Core 3.1 - Fatal编程技术网

Asp.net core 从ASP.NET Core 2.2迁移到3.1,出现错误404

Asp.net core 从ASP.NET Core 2.2迁移到3.1,出现错误404,asp.net-core,asp.net-core-3.1,Asp.net Core,Asp.net Core 3.1,从ASP.NET Core 2.2迁移到3.1后,发送表单时出现错误404: <form id="SpecialShowCreateForm" method="post" asp-controller="SpecialShow" asp-action="CreateSpecialShowAsync" r

从ASP.NET Core 2.2迁移到3.1后,发送表单时出现错误404:

 <form id="SpecialShowCreateForm" method="post"
                  asp-controller="SpecialShow"
                  asp-action="CreateSpecialShowAsync"
                  role="form"
                  data-ajax="true" ,
                  enctype="multipart/form-data"
                <div class="form-group">
                      <input asp-for="Caption" >
                </div>
            </form>

    [HttpPost]
    [AjaxOnly]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> CreateSpecialShowAsync([FromForm]SpecialShowViewModel vm)
    {
        return Json(new { msg = ok });
    }
选项
.UseSqlServer(Configuration.GetConnectionString(“Shop”));
services.AddMvc();
services.AddAntiforgery(o=>o.HeaderName=“XSRF-TOKEN”);
services.AddMemoryCache();
services.AddSession();
services.AddOptions();
}
公共void配置(IApplicationBuilder应用程序)
{
app.UseRouting();
app.UseEndpoints(端点=>
{
endpoints.MapControllers();
endpoints.MapAreaControllerRoute(
“管理员”,
“管理员”,
“Admin/{controller=Default}/{action=Index}/{id?}”);
endpoints.MapControllerRoute(
“默认值”、“{controller=Home}/{action=Index}/{id?}”);
});  
}
我找到了答案 问题是命名动作,我删除了Async,问题就解决了!!! 这很奇怪

 [HttpPost]
[AjaxOnly]
[ValidateAntiForgeryToken]
public async Task<ActionResult> CreateSpecialShow([FromForm]SpecialShowViewModel vm)
{
    return Json(new { msg = ok });
}
[HttpPost]
[仅限AjaxOnly]
[ValidateAntiForgeryToken]
公共异步任务CreateSpecialShow([FromForm]SpecialShowViewModel vm)
{
返回Json(新的{msg=ok});
}

你能发布你的
Startup.cs
文件吗?@Ali:在你的问题中编辑Startup.cs。此处不接受指向代码的链接。@IANKEP:已更新
 [HttpPost]
[AjaxOnly]
[ValidateAntiForgeryToken]
public async Task<ActionResult> CreateSpecialShow([FromForm]SpecialShowViewModel vm)
{
    return Json(new { msg = ok });
}