-1

ランダムに生成されたデータを格納するためのリストのリストを作成しましたが、私の実装では、「現在のコンテキストに変数名が存在しません」というインテリセンス エラーが表示されます。どこで間違ったのですか?これが私のコードの必要な部分です。

           List<List<string>> DataList = new List<List<string>>();
           //Some Code
            for (int i = 0; i < num; i++)
            {
                List<string> strVal = new List<string>();
                foreach (string someVal in SomeList)
                {                    
                    //Some Code
                    strVal.Add(data);
                }

                DataList.Add(strVal);
            }

            for (int i = 0; i < num; i++)
            {
                foreach (IList<string> name in DataList)
                {
                    foreach (string listVal in strVal) // Error Here
                    {
                        //Some Code
                    }                    
                }
            }

どこで間違ったのですか?ありがとう。

4

2 に答える 2

2

最初のループstrVal で定義forし、2 番目のループでアクセスしようとしています。

strValfor最初のループの最後で範囲外になります。両方のループからアクセスできるようにするには、最初のループの外で定義します。

List<List<string>> DataList = new List<List<string>>();
//Some Code
List<string> strVal = new List<string>();
for (int i = 0; i < num; i++)
{        
    foreach (string someVal in SomeList)
    {                    
        //Some Code
        strVal.Add(data);
    }
    DataList.Add(strVal);
}
for (int i = 0; i < num; i++)
{
    foreach (IList<string> name in DataList)
    {
       foreach (string listVal in strVal)
       {
            //Some Code
       }                    
    }
}

これがエラーの原因ですが、意図したものではない可能性があります。より論理的なものについては、@Chenの回答を参照してください:)

于 2013-01-01T16:07:22.253 に答える
2
  foreach (IList<string> name in DataList)
            {
                foreach (string listVal in strVal) // Error Here
                {
                    //So

する必要があります

  foreach (IList<string> name in DataList)
            {
                foreach (string listVal in name ) // Error Here
                {
                    //So
于 2013-01-01T16:08:09.963 に答える