C# 浏览器连接重置-仅当返回包含N个以上元素的模型时才重置ASP.NET MVC
我正在开发一个ASP.NET MVC应用程序。有部分视图、控制器、处理程序和迭代的模型,其项显示在视图上。 它工作得很好,直到我的列表中有超过25个元素。如果我返回26个元素,它将开始在浏览器(FF和Chrome)中显示一条“连接已重置”消息: 这些是局部视图:C# 浏览器连接重置-仅当返回包含N个以上元素的模型时才重置ASP.NET MVC,c#,asp.net-mvc,razor,connection-reset,C#,Asp.net Mvc,Razor,Connection Reset,我正在开发一个ASP.NET MVC应用程序。有部分视图、控制器、处理程序和迭代的模型,其项显示在视图上。 它工作得很好,直到我的列表中有超过25个元素。如果我返回26个元素,它将开始在浏览器(FF和Chrome)中显示一条“连接已重置”消息: 这些是局部视图: public ActionResult GetingredientsList() { if (Request.IsAjaxRequest()) {
public ActionResult GetingredientsList()
{
if (Request.IsAjaxRequest())
{
return PartialView("Partial/ingredientsList", Handler.GetingredientsListModel(MvcApplication.ClientApplication));
}
private static IEnumerable<ingredientsListItemModel> GetingredientsListItems(ClientApplication clientApplication)
{
//Some code...
return list.ToList();
//if this list contains more than 25 elements it starts failing and showing the Connection reset error.
}
迭代模型项:
@foreach(ingredientsListItemModel ingredientsListItem in Model.ingredientsListItems)
{
<text>
<div id="@ingredientsListItem.ContainerDiv">
@Html.Partial("Partial/ingredientsListItem", ingredientsListItem)
</div>
</text>
}
处理程序:
public ActionResult GetingredientsList()
{
if (Request.IsAjaxRequest())
{
return PartialView("Partial/ingredientsList", Handler.GetingredientsListModel(MvcApplication.ClientApplication));
}
private static IEnumerable<ingredientsListItemModel> GetingredientsListItems(ClientApplication clientApplication)
{
//Some code...
return list.ToList();
//if this list contains more than 25 elements it starts failing and showing the Connection reset error.
}
私有静态IEnumerable GetingCreditsListItems(客户端应用程序客户端应用程序)
{
//一些代码。。。
return list.ToList();
//如果此列表包含超过25个元素,它将开始失败并显示连接重置错误。
}
我尝试更改web.config以包括(但无效):
无论列表中是哪个元素,它都可以是任何数据,但一旦超过25项,它就会失败。我想可能会有一个响应大小限制以某种方式改变?
在IIS中?在web.config中?
这似乎是一个尺寸限制问题。好的,任何帮助都将不胜感激。还有可能涉及的
maxRequestLength
和maxAllowedContentLength
设置:@DavidTansey这似乎是关于控制器响应大小,而不是请求大小。控制器如何调用?这里有if-ajax请求(没有else子句?),那么它调用了ajax吗?如果是,则客户端可能会出现错误,从而创建了错误的uri。此外,列表是否可能包含空值?只是一个建议,您是否确定元素的第26个或后面的内容在其数据中是一致的。我唯一的想法是,如果第26个不走运的节点有一些空值,或者任何其他问题使您无法获得任何有关它的信息而中断了系统。请尝试在IIS中启用失败的请求跟踪。请参阅此处的说明:。跟踪“所有内容”,然后复制/粘贴日志文件。还有可能涉及的maxRequestLength
和maxAllowedContentLength
设置:@davidansey这似乎是关于控制器响应大小,而不是请求大小。控制器如何调用?这里有if-ajax请求(没有else子句?),那么它调用了ajax吗?如果是,则客户端可能会出现错误,从而创建了错误的uri。此外,列表是否可能包含空值?只是一个建议,您是否确定元素的第26个或后面的内容在其数据中是一致的。我唯一的想法是,如果第26个不走运的节点有一些空值,或者任何其他问题使您无法获得任何有关它的信息而中断了系统。请尝试在IIS中启用失败的请求跟踪。请参阅此处的说明:。跟踪“所有内容”,然后复制/粘贴日志文件。