c# - ASP.NET Web API - 如何更改 XML 对象图中的最大项数

标签 c# xml-serialization asp.net-web-api

当通过 ASP.NET Web API 服务返回大量 XML 数据时,会产生错误:HTTP Error 500(内部服务器错误)。当模型中存在循环依赖时,通常会发现此错误,但这里不是这种情况,因为当数据量较小时,数据会完美返回。

这个错误好像是当节点数超过60,000时产生的,经过研究我发现有一个WCF参数限制了对象图中的项目数量,这个参数的默认值为:65,536是这是什么导致了我的问题?如果可以的话,有没有办法在 ASP.NET Web API 中更改该值?

最佳答案

您真的需要返回那么多节点吗?也许您应该考虑在查询中使用 $top={pageSize}&$skip={pageNumber} 对其进行分页。 但是我假设您在 API Controller 中使用 [Queryable] 属性。如果是这样,您可以尝试使用 MaxNodeCount 属性。

关于c# - ASP.NET Web API - 如何更改 XML 对象图中的最大项数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14320170/

相关文章:

c# - 如果我在 C# 代码中使用继承,数据库中是否需要有 "Type"列?

asp.net-core - Asp.Net Core 5 API Web 以 WCF 等流模式上传大文件

c# - 如何通过像 ASMX Web 服务一样创建它的实例来使用 WebAPI

c# - 如何获取 HttpRuntime.Cache 中对象的大小?

c# - 通过在文本框中键入内容来过滤列表框的集合 ViewSource

c# - 将 XMLElement(Order) 属性与 XMLArrayItem 属性一起使用

java - XStream 不会从 XML 反序列化回来

java - 不带空格的 XML 属性

c# - 如何在内存中构建ZipArchive并通过Web API 2中的IHttpActionResult下载?

c# - c# 中的选项类型替代方案