无法在已发布的Web应用程序中创建一些记录

时间:2019-07-24 10:52:23

标签: asp.net-mvc

我已将ASP.NET.Core Web应用程序发布到托管站点。出现了一个我无法解决的奇怪问题。在开发中,我可以创建一条记录,但是在发布之后,我将无法创建记录,并且在浏览器控制台上看不到任何错误。奇怪的是,发布后我可以为所有其他6种实体类型创建记录,但是只有1种实体类型存在问题,因此应该不是一个普遍的问题。该实体与其他实体有关系。

提交表格后,返回操作无效 (返回RedirectToAction(“ Edit”,“ Orders,new {id = order.Id}); )

代替[HttpGet]重新创建页面

控制器动作

[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Create(OrderViewModel orderViewModel)
{
if (ModelState.IsValid)
{
var order = _mapper.Map<Order>(orderViewModel);
_context.Orders.Add(order);
await _context.SaveChangesAsync();
return RedirectToAction("Edit", "Orders", new { id = order.Id });
}
return View(orderViewModel);
} 

剃刀视图

<form action="/Orders/Create" method="post" id="orderCreateForm">    
@Html.AntiForgeryToken()    
</form>

1 个答案:

答案 0 :(得分:0)

在剃刀查看代码中添加验证摘要,如下所示,并查看您遇到的错误。

<form action="/Orders/Create" method="post" id="orderCreateForm">
    @Html.ValidationSummary(false, "", new { @class = "text-danger" })    
    @Html.AntiForgeryToken()    
</form>