目的很简单:
构建一个SqlParameter类型的数组,用于给存储过程传入参数
传统做法:
SqlParameter[] param =
{
//第一个SqlParameter,
//第二个SqlParameter,
//...........
};为了某种目的,必须将构建SqlParameter数组放入一个方法(函数)中执行,利用out类型参数,如下:protected void Button1_Click(object sender, EventArgs e)
{
SqlParameter[] param = { }; string str = buildSQLQuery(a, out param,);
}
private string buildSQLQuery(string a, out SqlParameter[] param)
{
ArrayList al = new ArrayList();
if(a="")
{
al.Add(第一个SqlParameter);
}
else if(a="1")
{
al.Add(第二个SqlParameter);
}
for (int i = 0; i < al.Count; i++)
{
param[i] = (SqlParameter)al[i];
} return 一个string;
}
执行之后。提示:使用了未赋值的 out 参数“param”
请问大家如何才能正确通过函数给SqlParameter数组赋值
构建一个SqlParameter类型的数组,用于给存储过程传入参数
传统做法:
SqlParameter[] param =
{
//第一个SqlParameter,
//第二个SqlParameter,
//...........
};为了某种目的,必须将构建SqlParameter数组放入一个方法(函数)中执行,利用out类型参数,如下:protected void Button1_Click(object sender, EventArgs e)
{
SqlParameter[] param = { }; string str = buildSQLQuery(a, out param,);
}
private string buildSQLQuery(string a, out SqlParameter[] param)
{
ArrayList al = new ArrayList();
if(a="")
{
al.Add(第一个SqlParameter);
}
else if(a="1")
{
al.Add(第二个SqlParameter);
}
for (int i = 0; i < al.Count; i++)
{
param[i] = (SqlParameter)al[i];
} return 一个string;
}
执行之后。提示:使用了未赋值的 out 参数“param”
请问大家如何才能正确通过函数给SqlParameter数组赋值
解决方案 »
- 用Dataset把XML导入到数据库的问题
- 一个产品库,按关键字搜索,如何实现高效搜索呢
- 大虾们...来给个思想....
- dataRelation未将对象引用设置到对象的实例错误
- 在网页文本部分中动态插入图片
- 一个Web用户控件中js的问题,分不够另开帖给
- 一个奇怪的数据库与应用程序的问题?
- 在服务器端实现自动get,post其它站点页面的功能要用哪个技术?ASP.NET WebFrom里没有webbrowser没好处理。
- 窗口问题!
- 如何自动将vs.net与datagrid绑定起来呀,总是抽不到数据,请指示了???各位高手、大侠。
- 请教一个关于xml的问题
- [100分求解]A page can have only one server-side Form tag. 异常
不想的话 可以用ref不过本身就是引用类型 不用加 out吧
那就用ref呗
改成
private string buildSQLQuery(string a, out SqlParameter[] param)
{
ArrayList al = new ArrayList();
if(a="")
{
al.Add(第一个SqlParameter);
}
else if(a="1")
{
al.Add(第二个SqlParameter);
} SqlParameter[] tmpParams = new SqlParameter[al.Count]; for (int i = 0; i < al.Count; i++)
{
tmpParams[i] = (SqlParameter)al[i];
}
param = tmpParams; return 一个string;}这样我想应该能行
{
...
}
SqlParameter[] param = new SqlParameter[int型数字];out的,要先声明。
我告诉你你实现不了,还不如好好goolge一下别人些的
呵呵