0

これは私が少し困惑している単純な問題です...

私が見る限りIList<>、model.childrenはaで、model.Nameは文字列であるため、実際にはどこでもcharを使用していませんが、必要に応じて、foreachループでcharをcatalogue.departmentに変換できないというエラーが発生します。これ以上の情報はお気軽にお問い合わせください。

        private void DisplayOnWebsiteChecked(Object sender, EventArgs e)
    {
        var departments = model.Name;
        var departmentChildren = model.Children;

        if (departmentChildren != null)
        {
            int zeroChildren = 0;

            if (departmentChildren.Count.Equals(zeroChildren));
            {
                foreach (Department Children in departments)
                {
                }
            }
        }
    }

編集:この問題は実際に修正されました。リストを間違った場所に配置して実際にコードを台無しにしたことが判明したので、修正したコードを以下に投稿します。

    private void DisplayOnWebsiteChecked(Object sender, EventArgs e)
    {
        var departments = model.Name;
        var departmentChildren = model.Children;

        if (departmentChildren != null)
        {
            int zeroChildren = 0;

            if (departmentChildren.Count.Equals(zeroChildren));
            {
                foreach (Department Child in departmentChildren)
                {
                }
            }
        }
    }
4

5 に答える 5

3

model.Nameは文字列です

割り当てたもの:

var departments = model.Name;

ここで、departmentは型stringであり、stringIEnumerable<char>は実装します。そのため、を使用してそれを列挙すると、ループ内foreachの項目は型になります。foreachchar

そしてあなたは使用しています

foreach (Department Children in departments)
    {
    }

charここでは、departmentが文字列であるため、Childrenはタイプですが、タイプとして指定したためDepartment、このエラーが発生します。

于 2012-10-03T10:25:10.430 に答える
1

departmentsstringfrom割り当てです:

 var departments = model.Name;

THatはあなたがとChildrenして得た理由ですchar

する必要があります:

 foreach (Department Children in departmentChildren)
 {
 }
于 2012-10-03T10:25:28.037 に答える
1

問題は次の行にあります。

foreach (Department Children in departments)

departmentsは文字列であり、それを繰り返し処理しようとしています。これは、文字列をIEnumerable<char>

于 2012-10-03T10:26:14.297 に答える
0

あなたのコードでは:

var departments = model.Name;

Nameは文字列であり、charのコレクションを列挙していると思います。

于 2012-10-03T10:25:14.290 に答える
0

部門は であり、 をとしてstring処理しようとしていますstringIEnumerable<char>

As stringimplementsIEnumerable<char>であり、そのため、 の項目foreach loopは typecharです。

int zeroChildren = 0;

if (departmentChildren.Count.Equals(zeroChildren));
{

}

では、コレクションが空の場合のループの意味は何ですか...?foreachdepartmentChildren

于 2012-10-03T10:31:04.137 に答える