是否有替代多行文本框允许更大的输入?

时间:2017-08-23 17:31:47

标签: asp.net webforms textbox multilinestring bigdata

我目前正在为我的用户使用多行文本框向我提交非常大的数据字符串。我注意到多行文本框的最大容量大约为40亿个字符或可用的内存(以较小者为准)。我用于测试目的的字符串远低于40亿个字符。但是我仍然无法提交我的数据。当我单击提交按钮时,数据被编程为写入根文件夹中的.txt文件,并使用标签在屏幕上打印数据:

<asp:Label ID="lblmsg" Font-Bold="false"  style="white-space:pre;"  runat="server" Text=""></asp:Label>

在Safari上,我可以在提交之前收到所需的验证错误。 (如果我禁用验证码,我会在提交时重新路由到我的网络应用程序的错误页面。)

在Chrome上我没有验证错误,我点击提交,输入上传到100%然后我得到了我的网络应用的错误页面。

我在想,我的错误原因可能是任何可能的原因:

1)标签或网络应用程序无法在一个页面上处理那么多数据。或者:

2)我使用基本的Microsoft Azure Web应用程序服务计划来托管我的webform。也许我有一个处理限制。

以下是验证码的代码:(即使我不认为这是问题。

<asp:RequiredFieldValidator  ValidationGroup="g1"  ControlToValidate="txtvalue" ForeColor="Red"  ID="RequiredFieldValidator1" runat="server" ErrorMessage="empty or contains more than 4,294,967,295 characters (or an amount based on available memory, whichever is smaller)."></asp:RequiredFieldValidator>
                        <br />  <asp:RequiredFieldValidator  ValidationGroup="g1"  ControlToValidate="txtvalue2" ForeColor="Red"  ID="RequiredFieldValidator2" runat="server" ErrorMessage=" empty or contains more than 4,294,967,295 characters (or an amount based on available memory, whichever is smaller.)"></asp:RequiredFieldValidator>
                        <br /> <asp:RegularExpressionValidator  ValidationGroup="g1" ForeColor="Red"  ID="RegularExpressionValidator1" runat="server" ControlToValidate="txtvalue" ErrorMessage="Invalid delimiter format. Make sure to use one consistent delimeter: (comma, space, or tab)." ValidationExpression="^\s*-?[0-9][0-9]*\s*(?=([., \t]))(?:\s*(?:\1|\r?\n)\s*-?[0-9][0-9]*)+\s*$"></asp:RegularExpressionValidator>
                        <br /> <asp:RegularExpressionValidator  ValidationGroup="g1"  ForeColor="Red" ID="RegularExpressionValidator2" runat="server" ControlToValidate="txtvalue2" ErrorMessage="Invalid delimiter format. Make sure to use one consistent delimeter: (comma, space, or tab)." ValidationExpression="^\s*-?[0-9][0-9]*\s*(?=([., \t]))(?:\s*(?:\1|\r?\n)\s*-?[0-9][0-9]*)+\s*$"></asp:RegularExpressionValidator>

这是我的web.config代码,我认为也没关系:

<configuration>
<system.web>
  <compilation targetFramework="4.5" />
  <!-- 50MB in kilobytes, default is 4096 or 4MB-->
  <httpRuntime maxRequestLength="1073741824" executionTimeout="3600" targetFramework="4.5" />
  <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>
  </system.web>
  <system.webServer>
  <security>
  <requestFiltering>
    <!-- 50MB in bytes, default is 30000000 or approx. 28.6102 Mb-->
    <requestLimits maxAllowedContentLength="52428800" /> 
  </requestFiltering>
  </security>
  </system.webServer>
<appSettings>
    <add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
</appSettings>
</configuration>

这是我正在测试的输入的link

1 个答案:

答案 0 :(得分:1)

也许制作一个调用JavaScript代码的按钮,直接从剪贴板中抓取数据?见下文。

https://stackoverflow.com/a/6413100/3042383