[英]Connect database stored procedure by ADO.NET
Hello during connect Database I got some error connect to database (System.ArgumentException) 您好在连接数据库期间,我在连接数据库时遇到了一些错误(System.ArgumentException)
using ADO.NET. 使用ADO.NET。
There are some complicated parameter setting 有一些复杂的参数设置
Please check below coding. 请检查下面的编码。
ObjectParameter objp = new ObjectParameter("30", typeof(String));
Model.TestEntities1 mda = new Model.TestEntities1();
var test = mda.GetUserNameByUserId(777, objp);
foreach (var test1 in test)
{
MessageBox.Show(this, test1.ToString(), "Alter", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
the point to get data mda.GetUserNameByUserId(777, objp); 获取数据的点mda.GetUserNameByUserId(777,objp);
actually I wanted to send one parameter 777, however ADO.NET automatically generated one more parameter. 实际上我想发送一个参数777,但是ADO.NET自动生成了另一个参数。
public ObjectResult<GetUserNameByUserId_Result> GetUserNameByUserId(Nullable<global::System.Int32> userId, ObjectParameter userName)
{
ObjectParameter userIdParameter;
if (userId.HasValue)
{
userIdParameter = new ObjectParameter("UserId", userId);
}
else
{
userIdParameter = new ObjectParameter("UserId", typeof(global::System.Int32));
}
return base.ExecuteFunction<GetUserNameByUserId_Result>("GetUserNameByUserId", userIdParameter, userName);
}
Actually user name is output I don't need to send now. 实际上,输出的是用户名,我现在不需要发送。
Anyway I try to send my some temp parameters 无论如何,我尝试发送一些临时参数
and have a error. 并有一个错误。
System.ArgumentExceptiojn: The specified parameter name '30' is not valid. System.ArgumentExceptiojn:指定的参数名称“ 30”无效。 Parameter names must begin with a letter and can only contain letters, numbers, and underscores.
参数名称必须以字母开头,并且只能包含字母,数字和下划线。
Anyone know this issues. 谁都知道这个问题。
Thank you. 谢谢。
尝试将参数名称更改为UserName
ObjectParameter objp = new ObjectParameter("UserName", typeof(String));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.