Error: Object must implement IConvertible

G

Guest

Hi can someone please help me with the following error!

I keep getting:

ERROR:
System.InvalidCastException: Object must implement IConvertible.

Line 231: PageID = cmd.Parameters("@PageID").Value
Line 232:
Line 233: Dim myReader As SqlDataReader = cmd.ExecuteReader()
Line 234: myReader.Read()
Line 235:

I would be really grateful if someone could tell me why this might be
happening!

Thanks

... CODE ..

Sub DGPages_Insert(ByVal sender As Object, ByVal e As
DataGridCommandEventArgs)
If e.CommandName = "Insert" Then
Dim modDate As String
Dim dtNow As DateTime = DateTime.Now
Dim description As String
Dim txtdescription As TextBox
Dim title As String
Dim txtTitle As TextBox
Dim PageID As Integer

Dim strSQL As String
modDate = dtNow.Date
'Read in the values of the TextBoxes


txtdescription = e.Item.FindControl("add_description")
description = txtdescription.Text
txtTitle = e.Item.FindControl("add_Title")
title = txtTitle.Text



'Create the appropriate SQL statement
Dim Myconn As New
SqlConnection(ConfigurationSettings.AppSettings("strConn"))
Dim cmd As New SqlCommand("PageAdd", Myconn)
cmd.CommandType = CommandType.StoredProcedure

Myconn.Open()

' Add Parameters to the SQL query
Dim objModDate, objDescription, objTitle, objPageID, objOffice
As SqlParameter
objModDate = cmd.Parameters.Add("@modDate", SqlDbType.DateTime)
objDescription = cmd.Parameters.Add("@description",
SqlDbType.NVarChar)
objTitle = cmd.Parameters.Add("@title", SqlDbType.NVarChar)
objPageID = cmd.Parameters.Add("@PageID", SqlDbType.Int)

objModDate.Direction = ParameterDirection.Input
objDescription.Direction = ParameterDirection.Input
objTitle.Direction = ParameterDirection.Input
cmd.Parameters("@PageID").Direction = ParameterDirection.Output

objModDate.Value = modDate
objDescription.Value = txtdescription
objTitle.Value = txtTitle
PageID = cmd.Parameters("@PageID").Value

Dim myReader As SqlDataReader = cmd.ExecuteReader()
myReader.Read()

myReader.Close()

Myconn.Close()

'Rebind the DataGrid
DGPages.EditItemIndex = -1
BindData()
End If

End Sub
 
G

Guest

Since your @PageID is an output parameter, you should put
PageID = cmd.Parameters("@PageID").Value after
any SqlCommand execute statement such as ExecuteNonQuery,
or ExecuteReader, or ExecuteScalar rather than before
those codes.

Hope it's helpful to you.

Elton
(e-mail address removed)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,480
Members
44,900
Latest member
Nell636132

Latest Threads

Top