在ASP.NET 5中请求BinaryRead(MVC6)

我有这个代码在ASP.NET MVC 5中工作,但我不能使它在ASP.NET MVC 6(ASP.NET 5)中工作

有人能帮我吗?

public EmptyResult PayPalPaymentNotification(PayPalCheckoutInfo payPalCheckoutInfo) { PayPalListenerModel model = new PayPalListenerModel(); model._PayPalCheckoutInfo = payPalCheckoutInfo; byte[] parameters = Request.BinaryRead(Request.ContentLength); if (parameters != null) { model.GetStatus(parameters); } return new EmptyResult(); } 

错误在于:

 byte[] parameters = Request.BinaryRead(Request.ContentLength); 

HttpRequest不包含BinaryRead的定义,也没有扩展方法BinaryRead接受类型为HttpRequest的第一个参数(你是否缺少using指令或程序集引用?)。

我已经测试了这样的事情,但没有工作:

 HttpContext.Request.BinaryRead 

谢谢。

编辑:类似问题 – > 二进制读取错误

HttpRequestFeature对象现在提供一个作为流的主体 。 所以这应该工作。

  public static byte[] ReadRequestBody(Stream input) { using (MemoryStream ms = new MemoryStream()) { input.CopyTo(ms); return ms.ToArray(); } } 

然后 …

  var paramArray = ReadRequestBody(Request.Body);