Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > ติด error Input string was not in a correct format. รบกวนหน่อยคะ


 

[.NET] ติด error Input string was not in a correct format. รบกวนหน่อยคะ

 
Topic : 078864



โพสกระทู้ ( 45 )
บทความ ( 0 )



สถานะออฟไลน์



error ว่า
Code
Server Error in '/' Application.
--------------------------------------------------------------------------------

Input string was not in a correct format.
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.FormatException: Input string was not in a correct format.

Source Error:


Line 122: Cmd.Parameters.Add("@Resou", SqlDbType.NVarChar).Value = Me.TxtResou.Text
Line 123: Cmd.Parameters.Add("@Qty", SqlDbType.Char).Value = Me.TxtQty.Text
Line 124: Cmd.ExecuteNonQuery()
Line 125: objConn.Close()
Line 126: BindData()


Source File: C:\Users\Administrator\Desktop\RescuesPlan\Rescue\Rescue\MResou.aspx.vb Line: 124

Stack Trace:


[FormatException: Input string was not in a correct format.]
System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +9594283
System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +119
System.String.System.IConvertible.ToInt32(IFormatProvider provider) +46
System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider) +385
System.Data.SqlClient.SqlParameter.CoerceValue(Object value, MetaType destinationType) +5034544

[FormatException: Failed to convert parameter value from a String to a Int32.]
System.Data.SqlClient.SqlParameter.CoerceValue(Object value, MetaType destinationType) +5033757
System.Data.SqlClient.SqlParameter.GetCoercedValue() +32
System.Data.SqlClient.SqlParameter.Validate(Int32 index, Boolean isCommandProc) +103
System.Data.SqlClient.SqlCommand.BuildParamList(TdsParser parser, SqlParameterCollection parameters) +209
System.Data.SqlClient.SqlCommand.BuildExecuteSql(CommandBehavior behavior, String commandText, SqlParameterCollection parameters, _SqlRPC& rpc) +237
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +987
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +162
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) +178
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +137
Rescue.MResou.BRUpdate_Click(Object sender, EventArgs e) in C:\Users\Administrator\Desktop\RescuesPlan\Rescue\Rescue\MResou.aspx.vb:124
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.1


โค้ดทั้งหมดนะคะ

Code (VB.NET)
001.Imports System.Data
002.Imports System.Data.SqlClient
003.Public Class MResou
004.    Inherits System.Web.UI.Page
005. 
006.    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
007.        If Not IsPostBack Then
008.            TxtResou.Text = ""
009.            TxtQty.Text = ""           
010.            TxtResou.Focus()
011.        End If
012.        BRDel.Attributes.Add("onclick", "if(!window.confirm('Are you sure delete record??'))" & "return false;")
013.        If Not IsPostBack Then
014.            BindData()
015.        End If
016.    End Sub
017. 
018.    Protected Sub BREdit_Click(ByVal sender As Object, ByVal e As EventArgs) Handles BREdit.Click
019.        If lstResou.SelectedIndex < 0 Then
020.            lblMessageR.Text = "Please Select Resource"
021.            Return
022.        End If
023.        Dim strConn As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Rescuedb.mdf;Integrated Security=True;User Instance=True"
024.        Dim objConn As New SqlConnection(strConn)
025.        objConn.Open()
026.        Dim cmdSQL As String = "SELECT ResouID,Resou,Qty " & " FROM dbo.Resource WHERE ResouID =" & lstResou.SelectedItem.Value
027.        Dim Cmd As New SqlCommand(cmdSQL, objConn)
028.        Dim RR As SqlDataReader
029.        RR = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection)
030.        While RR.Read()
031.            lblResouID.Text = RR("ResouID")
032.            TxtResou.Text = RR("Resou")
033.            TxtQty.Text = RR("Qty")
034.        End While
035.        TxtResou.Enabled = True
036.        TxtQty.Enabled = True
037.        BRUpdate.Visible = True
038.        BRDel.Visible = True
039.        lblMessageR.Text = ""
040.        lblErrorResou.Visible = False
041.        lblErrorQty.Visible = False
042.    End Sub
043. 
044.    Protected Sub BRDel_Click(ByVal sender As Object, ByVal e As EventArgs) Handles BRDel.Click
045.        'Delete Data
046.        Dim strConn As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Rescuedb.mdf;Integrated Security=True;User Instance=True"
047.        Dim objConn As New SqlConnection(strConn)
048.        objConn.Open()
049.        Dim cmdSQL As String = "DELETE FROM dbo.Resource " & " WHERE ResouID=@ResouID"
050.        Dim Cmd As New SqlCommand(cmdSQL, objConn)
051.        Cmd.Parameters.Add("@ResouID", SqlDbType.Int).Value = Me.lblResouID.Text
052.        Cmd.ExecuteNonQuery()
053.        objConn.Close()
054.        BindData()
055.        lstResou.Focus()
056.        lblMessageR.Text = "Successfully Delete:" & TxtResou.Text & " " & TxtQty.Text
057.        TxtResou.Enabled = False
058.        TxtQty.Enabled = False
059.        BRUpdate.Visible = False
060.        BRDel.Visible = False
061.    End Sub
062. 
063.    Protected Sub BRAdd_Click(ByVal sender As Object, ByVal e As EventArgs) Handles BRAdd.Click
064.        lblErrorResou.Visible = False
065.        lblErrorQty.Visible = False
066.        'Check Error input
067.        If TxtResou.Text = "" Then
068.            lblErrorResou.Visible = True
069.            lblErrorR.Text = "Please Enter Name"
070.            TxtResou.Focus()
071.            Return
072.        End If
073.        If TxtQty.Text = "" Then
074.            lblErrorQty.Visible = True
075.            lblErrorR.Text = "Please Enter age"
076.            TxtQty.Focus()
077.            Return
078.        End If
079.         
080.        'Insert Data into SQL Server 2008
081.        Dim strConn As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Rescuedb.mdf;Integrated Security=True;User Instance=True"
082.        Dim objConn As New SqlConnection(strConn)
083.        objConn.Open()
084.        Dim cmdSQL As String = "INSERT INTO dbo.Resource" & "(Resou,Qty)" & "VALUES(@Resou,@Qty)"
085.        Dim Cmd As New SqlCommand(cmdSQL, objConn)
086.        Cmd.Parameters.Add("@Resou", SqlDbType.NVarChar).Value = Me.TxtResou.Text
087.        Cmd.Parameters.Add("@Qty", SqlDbType.Char).Value = Me.TxtQty.Text
088.        Cmd.ExecuteNonQuery()
089.        objConn.Close()
090.        lblErrorR.Text = "Successfully Insert:" & TxtResou.Text & " " & TxtQty.Text
091.        TxtResou.Text = ""
092.        TxtQty.Text = ""
093.        TxtResou.Focus()
094.    End Sub
095. 
096.    Protected Sub BRUpdate_Click(ByVal sender As Object, ByVal e As EventArgs) Handles BRUpdate.Click
097.        'Check Error input
098.        lblMessageR.Text = ""
099.        lblErrorResou.Visible = False
100.        lblErrorQty.Visible = False
101.         If TxtResou.Text = "" Then
102.            lblErrorResou.Visible = True
103.            lblErrorR.Text = "Please Enter Name"
104.            TxtResou.Focus()
105.            Return
106.        End If
107.        If TxtQty.Text = "" Then
108.            lblErrorQty.Visible = True
109.            lblErrorR.Text = "Please Enter age"
110.            TxtQty.Focus()
111.            Return
112.        End If
113. 
114.        'Update Data
115.        Dim strConn As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Rescuedb.mdf;Integrated Security=True;User Instance=True"
116.        Dim objConn As New SqlConnection(strConn)
117.        objConn.Open()
118.        Dim cmdSQL As String = "UPDATE dbo.Resource " & " SET Resou=@Resou,Qty=@Qty " & " WHERE ResouID=@ResouID"
119.        Dim Cmd As New SqlCommand(cmdSQL, objConn)
120.        Cmd.Parameters.Add("@ResouID", SqlDbType.Int).Value = Me.lblResouID.Text
121.        Cmd.Parameters.Add("@Resou", SqlDbType.NVarChar).Value = Me.TxtResou.Text
122.        Cmd.Parameters.Add("@Qty", SqlDbType.Char).Value = Me.TxtQty.Text
123.        Cmd.ExecuteNonQuery()
124.        objConn.Close()
125.        BindData()
126.        lstResou.SelectedIndex = lstResou.Items.IndexOf(lstResou.Items.FindByValue(lblResouID.Text))
127.        lstResou.Focus()
128.        lblMessageR.Text = "Successfully Update:" & TxtResou.Text & " " & TxtQty.Text
129.        TxtResou.Enabled = False
130.        TxtQty.Enabled = False
131.        BRUpdate.Visible = False
132.        BRDel.Visible = False
133.    End Sub
134. 
135.     
136. 
137. 
138.    Sub BindData()
139.        Dim strConn As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Rescuedb.mdf;Integrated Security=True;User Instance=True"
140.        Dim objConn As New SqlConnection(strConn)
141.        objConn.Open()
142.        Dim cmdSQL As String = " SELECT ResouID," & " Resou+''+Qty As ResourceData " & " FROM dbo.Resource "
143.        Dim Cmd As New SqlCommand(cmdSQL, objConn)
144.        Dim RR As SqlDataReader
145.        RR = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection)
146.        lstResou.DataSource = RR
147.        lstResou.DataValueField = "ResouID"
148.        lstResou.DataTextField = "ResourceData"
149.        lstResou.DataBind()
150.        If lstResou.Rows > 0 Then
151.            lstResou.SelectedIndex = 0
152.        End If
153.        lstResou.Focus()
154.        objConn.Close()
155.    End Sub
156.End Class




Tag : .NET, Ms SQL Server 2008, VBScript, Reporting Service, Web (ASP.NET), VS 2010 (.NET 4.x)

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-05-24 10:28:48 By : neel View : 5045 Reply : 2
 

 

No. 1

Guest


Code
Line 122: Cmd.Parameters.Add("@Resou", SqlDbType.NVarChar).Value = Me.TxtResou.Text
Line 123: Cmd.Parameters.Add("@Qty", SqlDbType.Char).Value = Me.TxtQty.Text
Line 124: Cmd.ExecuteNonQuery()
Line 125: objConn.Close()
Line 126: BindData()


จาก code ที่ให้มา ไม่แน่ใจนะครับว่าตรง Qty นี่ type เป็นแบบไหน เพราะที่ทำ ๆ มาถ้านึกถึง Qty น่าจะเป็น Int มากกว่า
พอดีอ้างอิง error ที่มันฟ้องด้วย : Input string was not in a correct format.
ลองค่อย ๆ เช็คดูครับ
นี่ code ผมนะครับดู ๆ แล้วเหมือนจะคล้าย ๆ กัน

Code
sqlUserName = "SELECT MemberID,MemberName,MemberLV FROM RRMember_V2 WHERE MemberName=@UserName AND MemberPWD=@Password"
objCmd = New SqlCommand(sqlUserName, objConn)
objCmd.Parameters.AddWithValue("@UserName", tbUsername.Text.Trim)
objCmd.Parameters.AddWithValue("@Password", tbPwd.Text.Trim)


ถ้าเก็บแบบ Int อาจจะต้อง convert ค่าก่อนด้วยมั้ง เป็นแบบนี้ CInt(TxtQty.Text)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-24 11:24:35 By : Nebula
 

 

No. 2

Guest


Cmd.Parameters.Add("@Qty", SqlDbType.Char).Value = Me.TxtQty.Text

i think @Qty type is int ^^

you try

Cmd.Parameters.AddWithValue("@Qty", Convert.Int32(Me.TxtQty.Text))

may be hlep you
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-24 14:57:04 By : พี่หมี
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ติด error Input string was not in a correct format. รบกวนหน่อยคะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่