【发布时间】:2023-03-06 18:15:01
【问题描述】:
ASP.NET 4.5 / c#
我一直在为多行文本框使用 RegularExpressionValidator,如下所示:
<asp:RegularExpressionValidator
ID="rev_txtEducationProfessional_courseDescription"
runat="server"
Display="None"
ValidationGroup="educationProfessional"
ControlToValidate="txtEducationProfessional_courseDescription"
ValidationExpression="(\s|.){0,500}$"
ErrorMessage="Course Description: 500 characters maximum"
EnableClientScript="false" />
到目前为止,我还没有遇到任何问题,但我有一个问题,恕我直言,这很奇怪。因此,如果我在文本框中输入 501 字母 Xs,验证器会正常触发。如果我输入 499 个字母 Xs 和几个回车,验证器会正常触发。一位用户今天与我联系,提出网站挂起的问题。我将问题追溯到多行文本框的验证器。用户提交了超过 500 个字符,但网站在验证时挂起并崩溃。当我在调试中运行时,挂起的是 Page.Validate(您可能已经猜到了,我所有的验证都是服务器端的)。我将提供导致问题的文本。我应该注意,如果我在此文本中粘贴最多 500 个字符,一切都很好......一旦我点击 501,我的网站就会转储。结合我的验证方式“(\ s |。){0,500} $”,此文本有一些特定的内容,这是非常错误的,但我不知道确切的问题是什么。事不宜迟,这是我眼中的刺:
将有关摩擦脊识别的科学基础的详细讲座与密集的潜在打印比较实践练习相结合。讲座材料结合了大卫·阿什鲍的山脊学概念和帕特·韦特海姆开发的实用应用技术。
识别脊纹线索,识别哪个手指或皮肤的哪个区域产生了特定的潜在印象。第三级细节的正确使用。比较和识别潜在印刷品的哲学和 ACE-V 方法。
我尝试删除连字符。此外,文本来自 Word,因此我尝试复制到记事本以删除任何特殊格式并尝试删除回车。通常该站点会运行几分钟,然后说该页面不可用而没有特定错误。我刚刚尝试调试并且一直在等待似乎永远得到响应。如果有任何有用的东西我会补充。我很好奇我是否做了一些明显错误的事情,或者我可以通过修改正则表达式来解决这个问题。
谢谢大家!
【问题讨论】:
-
我想知道从 Word 复制到记事本以尝试删除任何特殊字符是否不成功。我还没有尝试手动输入测试。如果可行,那么我可以逐段修改它以找到罪犯。不过,我希望有可以处理这个问题的验证(假设这是问题)。
标签: asp.net validation