Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#字符串到变量_C#_String_Variables - Fatal编程技术网

c#字符串到变量

c#字符串到变量,c#,string,variables,C#,String,Variables,我想使用字符串作为变量(string+int=variable) public DataTable Add_new(字符串t1、字符串t2、字符串t3、字符串t4、, t5串、t6串、t7串、t8串、, 字符串t9、字符串t10) { OLEDB参数[]参数=新的OLEDB参数[10]; 对于(int i=1;i

我想使用字符串作为变量
(string+int=variable)

public DataTable Add_new(字符串t1、字符串t2、字符串t3、字符串t4、,
t5串、t6串、t7串、t8串、,
字符串t9、字符串t10)
{
OLEDB参数[]参数=新的OLEDB参数[10];
对于(int i=1;i<11;i++)
{
参数[i-1]=新的OLEDB参数(“+i+”,OleDbType.VarChar);
参数[i-1]。值=(“t”+i);
}
DataTable dt=新的DataTable();
dt=DAL.选择数据(“添加代码”,参数);
返回dt;
}
为什么不将其作为:

List<String> T;
然后:

for (int i = 1; i < 11; i++)
{
     param[i-1] = new OleDbParameter(""+i+"", OleDbType.VarChar);
     param[i-1].Value = (T[i-1]);
}
for(int i=1;i<11;i++)
{
参数[i-1]=新的OLEDB参数(“+i+”,OleDbType.VarChar);
参数[i-1]。值=(T[i-1]);
}
就这样吧

public DataTable Add_new(List<String> T) {

  OleDbParameter[] param = new OleDbParameter[10];

  for (int i = 1; i < 11; i++) {
    param[i-1] = new OleDbParameter(i.ToString(), OleDbType.VarChar);
    param[i-1].Value = (T[i-1]);
  }
  DataTable dt = new DataTable();
  dt = DAL.selectdata("Add_Code", param);
  return dt;
}
公共数据表新增(列表T){
OLEDB参数[]参数=新的OLEDB参数[10];
对于(int i=1;i<11;i++){
param[i-1]=新的OLEDB参数(i.ToString(),OleDbType.VarChar);
参数[i-1]。值=(T[i-1]);
}
DataTable dt=新的DataTable();
dt=DAL.选择数据(“添加代码”,参数);
返回dt;
}
为什么不将其作为:

List<String> T;
然后:

for (int i = 1; i < 11; i++)
{
     param[i-1] = new OleDbParameter(""+i+"", OleDbType.VarChar);
     param[i-1].Value = (T[i-1]);
}
for(int i=1;i<11;i++)
{
参数[i-1]=新的OLEDB参数(“+i+”,OleDbType.VarChar);
参数[i-1]。值=(T[i-1]);
}
就这样吧

public DataTable Add_new(List<String> T) {

  OleDbParameter[] param = new OleDbParameter[10];

  for (int i = 1; i < 11; i++) {
    param[i-1] = new OleDbParameter(i.ToString(), OleDbType.VarChar);
    param[i-1].Value = (T[i-1]);
  }
  DataTable dt = new DataTable();
  dt = DAL.selectdata("Add_Code", param);
  return dt;
}
公共数据表新增(列表T){
OLEDB参数[]参数=新的OLEDB参数[10];
对于(int i=1;i<11;i++){
param[i-1]=新的OLEDB参数(i.ToString(),OleDbType.VarChar);
参数[i-1]。值=(T[i-1]);
}
DataTable dt=新的DataTable();
dt=DAL.选择数据(“添加代码”,参数);
返回dt;
}

您可以将值放入数组中,然后可以通过索引访问它们:

public DataTable Add_new(string t1,string t2,string t3,string t4,string t5,string t6,string t7,string t8,string t9,string t10) {
  string[] t = { t1, t2, t3, t4, t5, t6, t7, t8, t9, t10 };

  OleDbParameter[] param = new OleDbParameter[10];

  for (int i = 1; i < 11; i++) {
    param[i-1] = new OleDbParameter(i.ToString(), OleDbType.VarChar);
    param[i-1].Value = (t[i - 1]);
  }
  DataTable dt = new DataTable();
  dt = DAL.selectdata("Add_Code", param);
  return dt;
}

注意:您发送到方法中的那些值可能有一些意义。您应该考虑对参数有意义的名称,也许只是编写用于创建十个参数的代码。让一个循环来执行它很方便,但维护起来并不容易。

您可以将值放入数组中,然后通过索引访问它们:

public DataTable Add_new(string t1,string t2,string t3,string t4,string t5,string t6,string t7,string t8,string t9,string t10) {
  string[] t = { t1, t2, t3, t4, t5, t6, t7, t8, t9, t10 };

  OleDbParameter[] param = new OleDbParameter[10];

  for (int i = 1; i < 11; i++) {
    param[i-1] = new OleDbParameter(i.ToString(), OleDbType.VarChar);
    param[i-1].Value = (t[i - 1]);
  }
  DataTable dt = new DataTable();
  dt = DAL.selectdata("Add_Code", param);
  return dt;
}
注意:您发送到方法中的那些值可能有一些意义。您应该考虑对参数有意义的名称,也许只是编写用于创建十个参数的代码。让一个循环来做这件事很方便,但维护起来并不容易。

试试这个

public DataTable Add_new(params string[] t)
{
    OleDbParameter[] param = new OleDbParameter[10];

    for (int i = 0; i <= 10; i++)
    {
        var paramName = String.Format("t{0}", i+1);
        param[i] = new OleDbParameter(paramName, OleDbType.VarChar);
        param[i].Value = (t[i]);
    }
    DataTable dt = new DataTable();
    dt = DAL.selectdata("Add_Code", param);
    return dt;
}
public DataTable Add_new(参数字符串[]t)
{
OLEDB参数[]参数=新的OLEDB参数[10];
对于(inti=0;i试试这个

public DataTable Add_new(params string[] t)
{
    OleDbParameter[] param = new OleDbParameter[10];

    for (int i = 0; i <= 10; i++)
    {
        var paramName = String.Format("t{0}", i+1);
        param[i] = new OleDbParameter(paramName, OleDbType.VarChar);
        param[i].Value = (t[i]);
    }
    DataTable dt = new DataTable();
    dt = DAL.selectdata("Add_Code", param);
    return dt;
}
public DataTable Add_new(参数字符串[]t)
{
OLEDB参数[]参数=新的OLEDB参数[10];

对于(inti=0;i,您的实现没有意义

public DataTable Add_new(string t1, string t2, string t3, string t4,
                         string t5, string t6, string t7, string t8,
                         string t9, string t10)
        {
            OleDbParameter[] param = new OleDbParameter[10];
        for (int i = 1; i < 11; i++)
        {
            param[i - 1] = new OleDbParameter("" + i + "", OleDbType.VarChar);

            switch("t" + i)
            {
                case "t1":
                    param[i - 1].Value = t1;
                    break;
                case "t2":
                    param[i - 1].Value = t2;
                    break;
               //Recreate up to t10
            }
        }
        DataTable dt = new DataTable();
        dt = DAL.selectdata("Add_Code", param);
        return dt;
    }
public DataTable Add_new(字符串t1、字符串t2、字符串t3、字符串t4、,
t5串、t6串、t7串、t8串、,
字符串t9、字符串t10)
{
OLEDB参数[]参数=新的OLEDB参数[10];
对于(int i=1;i<11;i++)
{
param[i-1]=新的OLEDB参数(“+i+”,OleDbType.VarChar);
开关(“t”+i)
{
案例“t1”:
参数[i-1]。值=t1;
打破
案例“t2”:
参数[i-1]。值=t2;
打破
//最多可重新创建t10
}
}
DataTable dt=新的DataTable();
dt=DAL.选择数据(“添加代码”,参数);
返回dt;
}

您的实现没有意义。无论如何,以下内容适用于您的请求

public DataTable Add_new(string t1, string t2, string t3, string t4,
                         string t5, string t6, string t7, string t8,
                         string t9, string t10)
        {
            OleDbParameter[] param = new OleDbParameter[10];
        for (int i = 1; i < 11; i++)
        {
            param[i - 1] = new OleDbParameter("" + i + "", OleDbType.VarChar);

            switch("t" + i)
            {
                case "t1":
                    param[i - 1].Value = t1;
                    break;
                case "t2":
                    param[i - 1].Value = t2;
                    break;
               //Recreate up to t10
            }
        }
        DataTable dt = new DataTable();
        dt = DAL.selectdata("Add_Code", param);
        return dt;
    }
public DataTable Add_new(字符串t1、字符串t2、字符串t3、字符串t4、,
t5串、t6串、t7串、t8串、,
字符串t9、字符串t10)
{
OLEDB参数[]参数=新的OLEDB参数[10];
对于(int i=1;i<11;i++)
{
param[i-1]=新的OLEDB参数(“+i+”,OleDbType.VarChar);
开关(“t”+i)
{
案例“t1”:
参数[i-1]。值=t1;
打破
案例“t2”:
参数[i-1]。值=t2;
打破
//最多可重新创建t10
}
}
DataTable dt=新的DataTable();
dt=DAL.选择数据(“添加代码”,参数);
返回dt;
}
how convert(“t”+i)to variable t1 not“t1”您可以单击“edit”来更新您的问题。how convert(“t”+i)to variable t1 not“t1”您可以单击“edit”来更新您的问题。列表中的索引(就像数组一样)是零基的,因此应该是
t[i-1]
。列表中的索引(就像数组一样)是基于零的,所以应该是
T[i-1]