che*_*xis 5 c# asp.net asp.net-mvc asp.net-core-mvc asp.net-core
我有这段代码在 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();
}
Run Code Online (Sandbox Code Playgroud)
错误在:
byte[] parameters = Request.BinaryRead(Request.ContentLength);
Run Code Online (Sandbox Code Playgroud)
HttpRequest 不包含 BinaryRead 的定义,并且找不到接受 HttpRequest 类型的第一个参数的扩展方法 BinaryRead(您是否缺少 using 指令或程序集引用?)。
我已经测试过类似的东西,但不起作用:
HttpContext.Request.BinaryRead
Run Code Online (Sandbox Code Playgroud)
谢谢。
编辑:类似问题 ->二进制读取错误
HttpRequestFeature 对象现在提供了一个主体,它是一个流。所以这应该有效。
public static byte[] ReadRequestBody(Stream input)
{
using (MemoryStream ms = new MemoryStream())
{
input.CopyTo(ms);
return ms.ToArray();
}
}
Run Code Online (Sandbox Code Playgroud)
进而 ...
var paramArray = ReadRequestBody(Request.Body);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1709 次 |
| 最近记录: |