我在尝试编写项目代码,但无效的特定转换错误不断出现。任何人都可以帮助我,因为我难倒了。提前致谢。“指定的转换无效”转换ExecuteScalar的结果
Server Error in '/c#project' Application.
Specified cast is not valid.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Specified cast is not valid.
Source Error:
Line 39: cmd.Parameters.Add("@ProductId", OleDbType.Char).Value = strProductId;
Line 40: object oQty = cmd.ExecuteScalar();
Line 41: int intQuantityOnHand = (int)oQty;
Line 42: mDB.Close();
Line 43: int intBuyQuantity = int.Parse(ddlQty.Items[ddlQty.SelectedIndex].ToString());
Source File: c:\Users\jacob\Desktop\c#project\ProductDetails.aspx.cs Line: 41
Stack Trace:
[InvalidCastException: Specified cast is not valid.]
ProductDetails.btnBuy_Click(Object sender, EventArgs e) in c:\Users\jacob\Desktop\c#project\ProductDetails.aspx.cs:41
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +118
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +112
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5563
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272
cmd.ExecuteScalar()返回什么?你检查过了吗? – BlackVegetable
我没有看到任何错误的..尝试int oQty = cmd.ExecuteScalar();那么你不需要将其整理为一个整数 – Thousand
尝试在第40行放置断点并检查ExecuteScalar之后的oQty。这可能是SQL异常抛出和oQty为空?你能否也显示命令文本? – Dimitri