我在整个网站上看到了这个问题,反馈和故障排除步骤各不相同,但我的问题是错误仅在Web应用程序编译并发布到Web服务器时出现
堆栈跟踪如下:
[FormatException: Input string was not in a correct format.]
System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +14300177
System.Number.ParseDecimal(String value, NumberStyles options, NumberFormatInfo numfmt) +350
System.Convert.ToDecimal(String value) +168
_Default.Page_Load(Object sender, EventArgs e) +4229
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178
正如你所看到的,没有什么可以使用的,因为编译了所有的代码,我不知道从哪里开始。我甚至无法显示代码,因为有100行,我不希望SO社区做我的工作,但我真的很感谢有关识别有问题代码的技术的一些指导。
编辑我收到了有关上述错误的帮助,但是还有另一个错误出现了。这次它与一个不是正确格式的整数有关,令人困惑的是该变量是int
,它的赋值来自一个返回int
值的类。堆栈跟踪中提到的类使用int
参数,我检查的参数格式也正确。我甚至看过类调用的存储过程(在QA服务器上),并且也需要一个int。
最令人困惑的一点是,错误在通过Visual Studio运行时不会出现在我的开发机器上,,一旦编译,通过IIS < strong>但只有当我上传到QA服务器时,似乎它充满了问题。
新的堆栈跟踪如下:
[FormatException: Input string was not in a correct format.]
System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +14300177
System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +305
WebPortalDL.Supplier.ManageSupplier.GetSuppliersByBranchID(Int32 BranchID) +1645
_Default.Page_Load(Object sender, EventArgs e) +7406
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178
同样,我真正想要的是建议或方法/技术来调试这类问题,帮助很好,但如果它再次出现,那么我就不得不再次发帖而不知道该怎么做。