对.NET来说仍然是新的,但这在我看来还可以。我搞不清到底怎么回事。我正在尝试向SqlCommand添加一个参数。它是Server中的一个整数,我将把一个整数传递给它。
它挂在Command.Parameters.Add(PolicyNo)代码行上,并启动一个“由于内部错误而无法处理”。
我也试过
( Command.Parameters.AddWithValue("@PolicyNumber",
PolicyNo)
但没有结果。它发出同样的错误信息。下面是代码:
Public Function GetPolicyObj(ByVal PolicyNo As Integer) As PolicyInfo Implements ILetterWriter.GetPolicyObj
Dim SQLcon As New SqlClient.SqlConnection
'Establish the connection
SQLcon.ConnectionString = "Data Source=Hosed;Initial Catalog=MyCat;User ID=Goofy;Password=OpenSesame;"
SQLcon.Open()
Using Command As New SqlClient.SqlCommand("sp_GetPolicyInfo", SQLcon)
Command.CommandType = CommandType.StoredProcedure
Command.Parameters.Add(PolicyNo) 'Bombs on this line
Command.Connection.Open()
Dim reader As SqlClient.SqlDataReader = Command.ExecuteReader有什么想法吗?
谢谢,杰森
发布于 2011-05-05 19:02:56
您是否尝试过像这样创建参数:
Dim param as new SqlParameter()
param.ParameterName = "ParamName"
param.Value = PolicyNo
Command.Parameters.Add(param)发布于 2011-05-05 18:59:06
不完全确定这是否应该是问题,但是您没有给参数对象一个名称,只传递将引发异常的值,您也必须给参数一个名称。
Command.Parameters.Add(new SqlParameter("PolicyNo",PolicyNo))发布于 2011-05-05 19:03:23
Command.Parameters.Add()将SqlParameter对象作为其参数。所以你不能只发送整数。
http://www.csharp-station.com/Tutorials/AdoDotNet/Lesson06.aspx
https://stackoverflow.com/questions/5902641
复制相似问题