Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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# 如何将字符串转换为列表<;字符串>;类型 foreach(uniqueFields中的字符串Tablename) { List TblName=Tablename;//这里是问题所在 TblName=新列表(); Console.WriteLine(“的子项:“+TblName”); foreach(字段中的字符串TableAssociatedValue) { if(TableAssociatedValue.Contains(Tablename.Trim())) { Console.WriteLine(TableAssociatedValue); } } }_C# - Fatal编程技术网

C# 如何将字符串转换为列表<;字符串>;类型 foreach(uniqueFields中的字符串Tablename) { List TblName=Tablename;//这里是问题所在 TblName=新列表(); Console.WriteLine(“的子项:“+TblName”); foreach(字段中的字符串TableAssociatedValue) { if(TableAssociatedValue.Contains(Tablename.Trim())) { Console.WriteLine(TableAssociatedValue); } } }

C# 如何将字符串转换为列表<;字符串>;类型 foreach(uniqueFields中的字符串Tablename) { List TblName=Tablename;//这里是问题所在 TblName=新列表(); Console.WriteLine(“的子项:“+TblName”); foreach(字段中的字符串TableAssociatedValue) { if(TableAssociatedValue.Contains(Tablename.Trim())) { Console.WriteLine(TableAssociatedValue); } } },c#,C#,您可以指定为 foreach (string Tablename in uniqueFields) { List<string> TblName = Tablename;//here the problem TblName = new List<string>(); Console.WriteLine("children of :" + TblName); foreach (string TableAssociatedValue in

您可以指定为

foreach (string Tablename in uniqueFields)
{
    List<string> TblName = Tablename;//here the problem

    TblName = new List<string>();

    Console.WriteLine("children of :" + TblName);
    foreach (string TableAssociatedValue in fields)
    {
        if (TableAssociatedValue.Contains(Tablename.Trim()))
        {
            Console.WriteLine(TableAssociatedValue);
        }
    }       
}
List TblName=新列表{Tablename};
foreach(uniqueFields中的字符串Tablename)
{
List TblName=新列表();
// 
TblName.Add(表名);
// 
Console.WriteLine(“的子项:“+TblName”);
foreach(字段中的字符串TableAssociatedValue)
{
if(TableAssociatedValue.Contains(Tablename.Trim()))
{
Console.WriteLine(TableAssociatedValue);
}
}       
}

如前所述,不能将
string
类型的值分配给
List
类型的值。您认为这怎么可能呢?

您不能将列表
列表
设置为
字符串
-您必须将该字符串添加到列表中

foreach (string Tablename in uniqueFields)
{
   List<string> TblName = new List<string>();
   // <Start Changes>
   TblName.Add(Tablename);
   // <End Changes>
   Console.WriteLine("children of :" + TblName);
   foreach (string TableAssociatedValue in fields)
   {
       if (TableAssociatedValue.Contains(Tablename.Trim()))
       {
          Console.WriteLine(TableAssociatedValue);
       }
   }       
}
List TblName=新列表{Tablename};
但是您正在将
TblName
设置为一个空列表,这没有任何意义。

在您的案例中不需要使用
列表。只需直接使用
Tablename
,因为它包含所需的内容:

List<string> TblName=new List<string>{Tablename};
foreach(uniqueFields中的字符串Tablename)
{
//非必需列表TblName=Tablename;//这里是问题所在
//没有意义,也不是必需的TblName=new List();
//Console.WriteLine(“的子项:”+TblName);//请改用下面的行
Console.WriteLine(“的子项:“+Tablename”);
foreach(字段中的字符串TableAssociatedValue)
{
if(TableAssociatedValue.Contains(Tablename.Trim()))
{
Console.WriteLine(TableAssociatedValue);
}
}       
}

您被
唯一字段
搞糊涂了,它可能是一个
列表
?不要这样做:
foreach
构造已经在枚举列表中的每个
string
,并将每个字符串作为分配给循环中的
Tablename
的字符串返回。因此,您不再需要处理列表本身,您可以直接使用
Tablename
作为
string

那会是什么问题呢?你试过/研究过什么?请阅读您是否对
字符串
无法分配到
列表感到惊讶
?我希望Tablename值应复制到TblName..tats it您研究了什么?添加到列表中应该很容易搜索。虽然我不明白为什么您需要这个列表,但它的作用域仅限于foreach循环,您从来都不需要它。您在哪里使用
TblName
?请注意您的
控制台。WriteLine
也不会像您预期的那样工作,打印出
列表将产生其类名。请始终尝试解释您的答案。
List<string> TblName=new List<string>{Tablename};
foreach (string Tablename in uniqueFields)
{
    // not required List<string> TblName = Tablename;//here the problem

    // doesn't make sense, and is not required TblName = new List<string>();

    //Console.WriteLine("children of :" + TblName); // use the line below instead
    Console.WriteLine("children of :" + Tablename);
    foreach (string TableAssociatedValue in fields)
    {
        if (TableAssociatedValue.Contains(Tablename.Trim()))
        {
            Console.WriteLine(TableAssociatedValue);
        }
    }       
}