由于StringBuilder添加了新行,Javascript警报未触发

由于StringBuilder添加了新行,Javascript警报未触发,javascript,.net,stringbuilder,Javascript,.net,Stringbuilder,我正在使用StringBuilder AppendLine插入一些要在javascript警报框中显示的行。警报框未启动,wehn我看到视图源,我得到以下信息: alert("Void SendMail(Int32): Line number: 0 Object reference not set to an instance of an object. "); StringBuilder代码: sb.AppendLine(string.Format("{0}: ", frame.GetM

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

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()
您可能应该使用
StringBuilder.ToString().Replace(Environment.NewLine,\\n”)
。这应该转义javascript中的换行符,因此结果是:

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

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

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

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

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

您的stringbuilder代码在哪里?您的stringbuilder代码在哪里?是的,我也在服务器端记录。这只是为了方便调试的消息。是的,我也在服务器端登录。这只是为调试提供一条方便的消息。