C# 什么';ODataActionParameters的大小限制是多少?

C# 什么';ODataActionParameters的大小限制是多少?,c#,asp.net,odata,C#,Asp.net,Odata,我正在将一块相当大的JSON上传到一个由C#ASP.NET处理的OData v4操作中。在某一点上,我看到ODataActionParameters参数不是正确解析输入,而是简单地为null,服务器抛出null指针异常 我上传的数据可以分为多个数据块,但是a)这样做很不方便,b)这样做可能会导致一些数据丢失。(我正在将事件上传到模拟器;输入通常是可分段的,因为其中有分组,但不能保证是可分段的-可能只有一个分组。) 那么ODataActionParameters在字节负载下会在什么时候崩溃呢?我正

我正在将一块相当大的JSON上传到一个由C#ASP.NET处理的OData v4操作中。在某一点上,我看到ODataActionParameters参数不是正确解析输入,而是简单地为null,服务器抛出null指针异常

我上传的数据可以分为多个数据块,但是a)这样做很不方便,b)这样做可能会导致一些数据丢失。(我正在将事件上传到模拟器;输入通常是可分段的,因为其中有分组,但不能保证是可分段的-可能只有一个分组。)


那么ODataActionParameters在字节负载下会在什么时候崩溃呢?我正在做一些非常不科学的“扔到墙上看看有什么棒”测试,但如果有人能告诉我极限是什么,那会让我的生活更轻松。(还有,是否有办法将该限制扩展到几个端点?是否可配置?

事实证明,限制存在于system.web httpRuntime配置中,而不是ODataActionParameters本身。解决方案是更改web.config以允许更大的maxRequestLength:

<configuration>
  <system.web>
    <httpRuntime targetFramework="4.6" maxRequestLength="204800" />
    ....and other settings...
  </system.web>
</configuration>

…和其他设置。。。

默认的maxRequestLength为4MB。我在这里将其设置为200MB,因为我的应用程序周围的各种OData位设置了200MB的maxReceivedMessageSize。(特定请求的真正限制是该请求的OData配置和httpRuntime配置中的较低者。)

ODataActionParameters
只是
字典的别名,不可调。能否提供堆栈跟踪以显示异常发生的位置?