为什么cmd在调用了PrepareCommand方法后他的属性都变了?
局部变量不是在其他的方法中不能访问到吗,请说的详细点啊,谢谢!
public static SqlDataReader ExecuteReader(string connectionstring,CommandType cmdType,string cmdText,params SqlParameter[] commandParameters)
{
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(connectionstring); try
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
cmd.Parameters.Clear();
return rdr;
}
catch
{
conn.Close();
throw;
}
}private static void PrepareCommand(SqlCommand cmd,SqlConnection conn,SqlTransaction trans,CommandType cmdType,string cmdText,SqlParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open(); cmd.Connection = conn;
cmd.CommandText = cmdText; if (trans != null)
cmd.Transaction = trans; cmd.CommandType = cmdType; if(cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
局部变量不是在其他的方法中不能访问到吗,请说的详细点啊,谢谢!
public static SqlDataReader ExecuteReader(string connectionstring,CommandType cmdType,string cmdText,params SqlParameter[] commandParameters)
{
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(connectionstring); try
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
cmd.Parameters.Clear();
return rdr;
}
catch
{
conn.Close();
throw;
}
}private static void PrepareCommand(SqlCommand cmd,SqlConnection conn,SqlTransaction trans,CommandType cmdType,string cmdText,SqlParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open(); cmd.Connection = conn;
cmd.CommandText = cmdText; if (trans != null)
cmd.Transaction = trans; cmd.CommandType = cmdType; if(cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
解决方案 »
- MSChart数据多的话显示其他一项..来综合数据..标题要长..解决马上给分.(急))
- 程序如何抓取发帖的时间并写到数据库中
- cgAnimation
- gridview打印在IE7下面为什么说acticex未签名
- 地址栏传参的字符串长度是否有限制?
- 请教一个ASP.NET web应用中域用户验证的问题?
- 关于RangeValidator的用法
- 读取文本文件的内容到string变量
- B/S模式的电子白板的实现
- Dataset和SqlDataReader
- style="filter:progid:DXImageTransform.Microsoft.Gradient(在单元格内,颜色渐变的效果),怎么用?
- 网页上一个点击功能怎么实现, 实在想不出了。 (有答必结帖~)
{
string i="5";
asd(i);
Console.WriteLine(i);
Console.Read();
} private static void asd(string i)
{
i = "asdu";
}怎么不会输出asdu
即使是其他引用类型,也不是一定会改变的,看下面这个例子
static void Main(string[] args)
{
DataSet ds=new DataSet();
asd(ds);
Console.WriteLine(ds.Tables.Count.ToString());
bef(ds);
Console.WriteLine(ds.Tables.Count.ToString());
Console.Read();
} private static void asd(DataSet ds)
{
DataTable tb = new DataTable();
ds.Tables.Add(tb);
}private static void bef(DataSet ds)
{
ds = new DataSet();
}