WebAPI控制器中的HttpPost操作方法在.NETCore项目中不起作用

时间:2017-08-16 12:07:54

标签: c# asp.net-mvc asp.net-core

我正在尝试使用WebAPI插入到.Net Core项目的数据库中,但它无法正常工作 -

[Route("api/IMTWebAPI")]
public class IMTWebAPIController : BaseController
{
   [HttpPost("Create")]
   [ValidateAntiForgeryToken]
   public async Task<IActionResult> Create([FromBody] InterMemberTransfer interMemberTransfer)
   {
      var testController = new CRUDForIMT(_context);
      var response = await testController.Create(interMemberTransfer);
      return Json(response);
   }
}

CRUDForIMT -

private readonly ARMStocktradeV2Context _context;

public CRUDForIMT(ARMStocktradeV2Context context)
{
   _context = context;
}

public async Task<int> Create([Bind("Id,Date,EmailAddress,PhoneNumber,ResidentBroker")]    InterMemberTransfer interMemberTransfer)
{
   _context.Add(interMemberTransfer);
   var res = await _context.SaveChangesAsync();
   return res;
}

无论何时我在邮递员中测试,我都会得到400个错误的请求而没有回复。

我的模特 -

public partial class InterMemberTransfer
{
    public long Id { get; set; }
    public DateTime Date { get; set; }
    public string EmailAddress { get; set; }
    public long PhoneNumber { get; set; }
    public string ResidentBroker { get; set; }
}

我在Create action方法中添加了一个断点,但它甚至没有到达断点。

enter image description here

1 个答案:

答案 0 :(得分:2)

从您的创建方法中删除[ValidateAntiForgeryToken]。 否则你根本就不会进入这个方法。至少不是邮差。