我每天大约3-4次收到相同的错误,也没有运气寻找解决此问题的方法。根据堆栈跟踪,该错误发生在Microsoft.VisualBasic库中,所以我将如何正确解决此问题?

这是我发送给自己的报告以及服务器生成的报告。任何建议将不胜感激。

请求
=======
HttpContext.Current.Request.RawUrl:/
UserHostAddress:207.70.41.78
UserHostName:207.70.41.78
Request.Browser.Type:IE8
Request.Browser.Platform:Win2000


数据
====
System.Collections.ListDictionaryInternal


信息
=======
输入的字符串格式不正确。

资源
=====
微软VisualBasic

目标网站
===========
Double ParseDouble(System.String,System.Globalization.NumberFormatInfo)

堆栈跟踪
============
   在Microsoft.VisualBasic.CompilerServices.Conversions.ParseDouble(String Value,NumberFormatInfo NumberFormat)
   在Microsoft.VisualBasic.CompilerServices.Conversions.ToInteger(字符串值)


更新:

我了解错误是什么以及什么会导致错误发生。我遇到的问题是找出此错误究竟来自代码内。堆栈跟踪告诉我它来自Visual Basic,但没有别的。没有行号,没有有关什么函数导致此错误发生的其他信息,还有zilch继续,所以我被抓挠试图诊断某些东西,看起来可能包裹在.dll中。

如果可以将Ektron 7.6.6 sp2投射到被摄体上,则我们将对其运行。

有没有办法获得更可靠的堆栈跟踪?我检查了服务器上的事件查看器,而我先前发布的信息就是事件查看器中显示的全部内容。这对您没有帮助。

感谢您对我的问题的所有答复。

最佳答案

此错误表示正在执行Double.ParseDouble("bacon")这样的某些代码。培根很好吃,但不是双重的。在代码周围进行尝试/捕获,以查看传递给ParseDouble的内容。这应该有助于确定导致问题的原因(可能不是培根),并且应该有助于确定问题的根源。用户是否在文本框中输入它?它来自数据库吗?在这里,您可以将ParseDouble更改为Double.TryParse。这将使您获得双精度值(如果是双精度值),并且如果不提供输入错误数据时将执行的另一分支代码(此时,您可能会返回错误,例如“嘿,吃那个培根,不要将其放入那里”)。

09-16 01:14