如何从vb.net中的request.querystring获取值

时间:2009-10-05 14:47:06

标签: vb.net

我正在使用VB.NET

我的问题是,我已经得到了request.querystring

http://localhost/ISS/Training/TrainingUpdate.aspx?cpuserid='50'&%20courseid='6'&%20status='accept'

现在我想在sql存储过程参数中传递以上三个查询字符串。

例如,

Try
                Dim conString As String = WebConfigurationManager.ConnectionStrings("LocalSqlServer").ConnectionString
                Dim con As New SqlConnection(conString)
                con.Open()
                Dim cmd As SqlCommand
                cmd = New SqlCommand("uspUpdateDelegateAcceptDeclineStatus", con)
                cmd.CommandType = CommandType.StoredProcedure
                cmd.Parameters.Add("@CPUserID", SqlDbType.Int).Value = Request.QueryString("cpuserid")
                cmd.Parameters.Add("@CourseID", SqlDbType.Int).Value = Request.QueryString("courseid")
                cmd.Parameters.Add("@StatusName", SqlDbType.Int).Value = Request.QueryString("status")
                cmd.ExecuteNonQuery()
            Catch ex As Exception
                ErrorHandler.WriteError(ex.Message)
            End Try

但我可以在参数中获取请求查询字符串值。

请建议。

感谢。

最诚挚的问候, YUV

2 个答案:

答案 0 :(得分:2)

删除查询字符串中的额外'%20'(空格)(如果可以)。如果那不是一个选项,那么请记住它们是查询字符串的一部分,因此当您访问这些值时,您需要包含它:

Request.QueryString(" cpuserid")

答案 1 :(得分:0)

首先,看起来你的URL中有一些额外的空格(特别是在由%20标记的QueryString中)。

不确定是否会抛弃或不抛弃,但这是可能的。