由于StringBuilder添加了新行,Javascript警报未启动



我正在使用StringBuilder AppendLine插入一些要在javascript警报框中显示的行。警报框没有启动,当我看到视图源时,我得到以下信息:

alert("Void SendMail(Int32): 
Line number: 0 
Object reference not set to an instance of an object.
");

StringBuilder代码:

sb.AppendLine(string.Format("{0}: ", frame.GetMethod()));
sb.AppendLine(string.Format("Line number: {0} ", frame.GetFileLineNumber()));
sb.AppendLine(ex.Message);

请告诉我怎么解决这个问题?

您可能应该使用StringBuilder.ToString().Replace(Environment.NewLine, "\n")而不是StringBuilder.ToString()。这应该转义javascript中的换行符,因此结果是:

alert("Void SendMail(Int32):nLine number: 0 nObject reference not set to an instance of an object.n");

我真诚地希望你也能在服务器端的某个地方记录异常。

最新更新