我知道这个错误意味着什么-我知道如何修复it...but,我无法在我的代码中找到它发生的位置。我怀疑它发生在使用sqldatasource的下拉列表中。我正在使用带有FormView的VS2008 C#.net。当我单击FV更新按钮时,_ItemUpdating事件运行...我已经调试了该例程中的每一行代码,并且没有抛出错误。我甚至尝试/捕获来查找FormatException和SqlException错误,但它们没有被捕获。当页面刷新时(更新完成后)“输入字符串错误...”弹出,没有指示代码中的位置或哪些对象有问题。在我发布我的代码之前,因为我认为这是一个调试器问题,所以我想问这个问题(我通过谷歌搜索没有找到这个问题):
有没有一个VS调试器配置设置可以解决这个问题?
更新:我发布了一个答案。问题是调试器不会(至少在我的VS2008配置中)调试.aspx页面上的控件,只会调试.aspx.cs页面上的控件。我不得不猜测错误是从哪里来的,花了几天的时间。
发布于 2016-09-13 23:21:11
问题出在aspx页面上绑定到sqldatasource的两个textbox控件上。显然,我的调试器不调试sqldatasource。我错误地将SQL decimal数据类型格式化为货币,如下所示:
`Text='<%# Bind("RegistrationCost", "{0:C}") %>'
删除货币格式后,如:Text='<%# Bind("AirfareCost" ) %>'
,更新按钮又开始工作了!
我注意到了我的错误,因为我重写了代码,使用DataTable填充表单视图,直接更新sql数据库,而不使用sqldatasource。
https://stackoverflow.com/questions/39401667
复制