2013-05-07 59 views
3

我不确定这是否可能,但我想就是否可以提供一些意见,如果是,我该如何去做。基本上我有一个伪代码看起来像这样的表单。我知道表面上有1000行的网格看起来很荒谬,但是有一个真正的目的。是的,我有分页,但有些用户表示他们希望在一个页面上记录所有记录。.Net将一个大表单提交打包成多个提交

<form> 
    <grid> 
     <input type="text" /> 
     999 or so more rows 
    </grid> 
</form> 

.NET无法处理一个HTTP POST 1000个域元素,所以我在寻找一种方式来划分表单提交到多个帖子。分成多个网格不会被视为一种选择。如果共识是不可能的,那也没关系。

+1

你看过[Wizard](http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.wizard.aspx)控件吗? – Oded 2013-05-07 20:40:27

+0

.NET是不是能够处理那些记录在某处的许多记录? – Renan 2013-05-07 20:40:48

+0

@KyleTrauberman他说,用户提出了一个关于不使用分页的观点。 – Renan 2013-05-07 20:42:44

回答

6

如果我的理解正确,这里有一些历史记录,去年12月(2012)MS发布了针对IIS的更新,该更新将提交时的字段数限制为1000个表单字段。

The fix is to add this to the appSettings config section of your web.config:

<add key="aspnet:MaxHttpCollectionKeys" value="10000" /> 

这就提出任何你需要的,可以提交到10K的最大表单域,或。

+0

这是我认为我会去的方式。谢谢。 – 2013-05-08 15:05:30

-1

如果你真的必须这样做(我感到你的痛苦),告诉你的利益相关者你不能使用网格。编写你自己的html表格。告诉他们,失去网格的好处(如排序,命令按钮等)是付出的代价。

+1

这不是一个真正的选择,因为利益相关者此时已经有了多年的电网。 – 2013-05-07 21:16:48

0

放开标准标签并尝试使用jQuery $ .post()方法。制作一些JavaScript处理一批1000行的批处理文章。如果您希望在一个事务中提交全部内容,请尝试在服务器中创建3个操作:BeginSubmit,SubmitRows,EndSubmit。在动作EndSubmit上,将所有内容保存到数据库。

此致敬礼。