C#高手来,低手就算了,关于ParameterDirection返回值

privateSqlCommandCreateCommand(stringprocName,SqlParameter[]prams){//确认打开连接this.Open(... private SqlCommand CreateCommand(string procName, SqlParameter[] prams)
{
// 确认打开连接
this.Open();
SqlCommand cmd = new SqlCommand(procName, con);
cmd.CommandType = CommandType.Text; //执行类型:命令文本

// 依次把参数传入命令文本
if (prams != null)
{
foreach (SqlParameter parameter in prams)
cmd.Parameters.Add(parameter);
}
// 加入返回参数
cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));

return cmd;
}
不解释,看代码,
// 加入返回参数
cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
这段代码在这个函数里面到底是什么作用,是不是可以去掉?
展开
 我来答
jianzhao84
推荐于2018-04-12 · TA获得超过380个赞
知道小有建树答主
回答量:280
采纳率:0%
帮助的人:341万
展开全部
if (prams != null)
{
foreach (SqlParameter parameter in prams)
cmd.Parameters.Add(parameter);
}
上面 的代码是加入参数,一般来说是用户定义的参数,基本都是输入参数,当然你也可以定义输出参数。

cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
这段代码也是加入参数,但是这个参数的类型是返回值类型(sql参数类型有Input Output InputOutput ReturnValue 四种类型,默认是input型的。)你也可以定义 output型的,但每个sql 执行完成后都会有一个returnvalue型的返回参数,这里new了一个sqlParameter("ReturnValue"参数的名称, SqlDbType.Int参数的类型整型, 4参数的大小4字节,ParameterDirection.ReturnValue参数的类型为ReturnValue型, false是否可空, 0小数点左右二侧的总位数, 0总小数位数,string.Empty 源列的名称, DataRowVersion.Default 自己查,null一个 Object它是 SqlParameter 的值)

如果还不明白,百度我,或者QQ我258365860
如果你不需要 ReturnValue类型的参数,当然可去掉,一般我们都是不加这个参数的。包括微软自己的示例源码一般也不加。除非有用,但一般不用的

参考资料: http://msdn.microsoft.com/zh-cn/library/5a10hy4y.aspx

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丛冷松035
2011-04-05 · 超过20用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:48.1万
展开全部
这也要高手么?
自己回家多看书好么。。问问题也这么挑剔
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式