我有一个带有几个输入字段(几个 int 和字符串)和第 3 方 gridview 的 aspx 页面。验证数据,并从后面的代码调用存储过程以将数据保存在 DB 中。
Gridview 能够向用户显示错误框,可以从后面的代码中调用。所以当我捕捉到异常时,我会给它我的错误消息(错误消息类似于:“数据无法保存到数据库。错误:”&ex.message并调用显示错误框的函数。
通常这很好用,但是(哦,我讨厌这个但是)在尝试显示 sqlexception 时,我在页面上收到 javascript/html 错误并且没有显示错误框。
我得出的结论是 ex.message 包含一些此 javascript/html 错误框无法显示的字符。
所以,我尝试使用 System.Web.HttpUtility.HtmlEncode(ex.message),但它没有用。
只是出于好奇,我也做了 System.Web.HttpUtility.UrlEncode(ex.message) 然后我能够显示错误消息,但当然它有“+”而不是空格
示例:Cannot+insert+duplicate+key+row+in+object+'dbo.TableName'+with+unique+index+'IX_Unique_Dan'.%0d%0aThe+statement+has+been+terminated。
有没有内置的方法来删除不需要的字符、eofs 和类似的?目前我正在使用名为 CleanString 的函数来检查字符串中的字符。看起来像这样...
For Each c As Char In value.ToCharArray() 如果 (Char.IsLetterOrDigit(c)) 那么 味精 = 味精 & c ElseIf (c = ".") 那么 味精=味精&“。” . . . 别的 味精=味精&“” 万一 下一个
Tnx,本西