首页上一页 1 下一页尾页 1 条记录 1/1页
《ASP.NET项目开发全程实录》第一章SqlParameter参数的转换
发表在ASP.NET图书答疑
2010-08-13
是否精华
是
否
版块置顶:
是
否
[font size=4][font size=3][strong]在DataBase.cs里的代码:[/strong]
public SqlParameter MakeInParam(string ParamName, SqlDbType DbType, int Size, object Value)
{
return MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value);
}
public SqlParameter MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value)
{
SqlParameter param;
[font color=#FF0000] if (Size > 0)
param = new SqlParameter(ParamName, DbType, Size);
else
param = new SqlParameter(ParamName, DbType);
param.Direction = Direction;
if (!(Direction == ParameterDirection.Output && Value == null))
param.Value = Value;
[/font] return param;
}
[font size=4]我觉得红颜色的这些部分是[strong]多余的[/strong],在参数的转换过程中根本就没有起到任何作用。
输入参数必须要有初值,不然编译通不过。 参数的大小即使设为0,编译也能通过,[strong]个人觉得参数的转换没有起到任何的作用,MakeParam(string ParamName, SqlDbType DbType, Int32 Size,ParameterDirection Direction, object Value)这个函数就是多余的???[/strong][/font]
再个就是:
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);
}
// 加入返回参数
[font color=#FF0000] cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
return cmd;
[/font] }
书中就一直都没有用到存储过程,数据库db_SIS里存储过程也没有Return的返回值,为什么还要加入返回参数???[/font][/font]
这两个问题感到很困惑,麻烦老师看看,谢谢!!!
public SqlParameter MakeInParam(string ParamName, SqlDbType DbType, int Size, object Value)
{
return MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value);
}
public SqlParameter MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value)
{
SqlParameter param;
[font color=#FF0000] if (Size > 0)
param = new SqlParameter(ParamName, DbType, Size);
else
param = new SqlParameter(ParamName, DbType);
param.Direction = Direction;
if (!(Direction == ParameterDirection.Output && Value == null))
param.Value = Value;
[/font] return param;
}
[font size=4]我觉得红颜色的这些部分是[strong]多余的[/strong],在参数的转换过程中根本就没有起到任何作用。
输入参数必须要有初值,不然编译通不过。 参数的大小即使设为0,编译也能通过,[strong]个人觉得参数的转换没有起到任何的作用,MakeParam(string ParamName, SqlDbType DbType, Int32 Size,ParameterDirection Direction, object Value)这个函数就是多余的???[/strong][/font]
再个就是:
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);
}
// 加入返回参数
[font color=#FF0000] cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
return cmd;
[/font] }
书中就一直都没有用到存储过程,数据库db_SIS里存储过程也没有Return的返回值,为什么还要加入返回参数???[/font][/font]
这两个问题感到很困惑,麻烦老师看看,谢谢!!!