2

コードブロックを見ていますが、その行で何が起こっているのか理解できません - formValues.AllKeys.Contains("Email_" + i);割り当てが行われているように見えますが...

public ActionResult EditAdditionalLocations(int ID, int? count, FormCollection formValues)
{
    ...

    for (int i = 0; i < _count; i++)
    {
        formValues.AllKeys.Contains("Email_" + i);
        if (locations.Emails.Count > i)
        {
            locations.Emails[i] = formValues["Email_" + i];
        }
        else
        {
            locations.Emails.Add(formValues["Email_" + i]);
        }
    }
}
4

2 に答える 2

7

私の推測では、次のようなことが意図されていました。

if (formValues.AllKeys.Contains("Email_" + i)) {
    if (locations.Emails.Count > i)
    {
        locations.Emails[i] = formValues["Email_" + i];
    }
    else
    {
        locations.Emails.Add(formValues["Email_" + i]);
    }
}
于 2010-08-31T14:39:56.710 に答える
1

AllKeysこの行は、コレクションに が含まれているかどうかをチェックします"Email_" + iが、結果に対しては何もしません。

于 2010-08-31T14:37:44.493 に答える