我有一个使用servicestack v3.9编写的服务。我试图返回一个大的结果集,并在我的客户端上收到500内部服务器错误。如果我查看错误的详细信息,我会看到结果列在异常中,但在65536个字符后被截断。我知道这是.net强加的默认限制。我不知道的是如何增加服务堆栈。
我的客户端没有使用Web配置中的绑定连接到服务,因为它使用的是服务堆栈。对于web api调用,这似乎是解决此问题的方法,即在绑定中增加maxReceivedMessageSize。我猜有一些办法来增加服务堆栈的限制吗?
答案 0 :(得分:1)
ServiceStack本身不会施加任何限制或配额,因此您的服务所遇到的任何限制都是IIS / ASP.NET,它可以像任何其他ASP.NET Web应用程序一样增加
下面的Web.Config示例配置显示了如何在IIS6和IIS7中将请求限制增加到1GB:
<configuration>
<system.web>
<httpRuntime maxRequestLength="1048576" />
</system.web>
</configuration>
对于IIS7及更高版本,您还需要添加以下行:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824" />
</requestFiltering>
</security>
</system.webServer>