0

私は、コントロールの ID が string.concat によって設定されている多くのコード行がある C# のコードをいくつか持っています。例:

private genericControl ctrlGrid;
genericControl = Page.LoadControl(obj);
genericControl.ID = string.concat("gridControl");

string.concat を使用して ID を設定する特定の理由はありますか? これに関連するパフォーマンス ヒットはありますか?

4

1 に答える 1

1

私はあなたがちょうど使うべきだと思います:

genericControl.ID = "gridControl";

EDIT:string.Concat()1つのパラメータを渡すときに使用されるメソッドを見てください:

public static string Concat(params string[] values)
{
    if (values == null)
    {
        throw new ArgumentNullException("values");
    }
    int totalLength = 0;
    string[] strArray = new string[values.Length];
    for (int i = 0; i < values.Length; i++)
    {
        string str = values[i];
        strArray[i] = (str == null) ? Empty : str;
        totalLength += strArray[i].Length;
        if (totalLength < 0)
        {
            throw new OutOfMemoryException();
        }
    }
    return ConcatArray(strArray, totalLength);
}

そうです、パフォーマンスのオーバーヘッドがあり、文字列のみを使用する方が適切です。

于 2013-07-18T08:58:52.523 に答える