3

動作している.NET3.5アプリケーションを.NET4.0に変換していますが、ターゲットフレームワークを変更した後、これまでに見たことのないエラーが発生します。

メンバー'string.Join(string、params string [])'はインスタンス参照ではアクセスできません。代わりにタイプ名で修飾してください。

コードは次のとおりです。

/// <summary>
/// 
/// </summary>
/// <returns>command arguments as single line</returns>
public virtual string ToLine()
{
    List<string> argumentsList = new List<string>();
    CollectArguments(argumentsList);
    String args = null;
    foreach (string s in argumentsList)
        args = args.Join(" ", s);

    return ComandName().Join(" ", args);            
}

明らかに何かが3.5から4.0に変更されましたが、コンパイルするためにこのコードを変更する方法を理解するのに苦労しています。

4

2 に答える 2

7

Joinは上の静的メソッドなStringので、このようなインスタンスの代わりに型を使用して呼び出します

args = string.Join(" ", s);
于 2012-04-13T19:59:27.063 に答える
2
    public virtual string ToLine()
    {
        List<string> argumentsList = new List<string>();
        CollectArguments(argumentsList);
        String args = null;
        args = string.Join(" ", argumentsList);
        return string.Join(" ", ComandName(), args);
    }
于 2012-04-13T20:00:49.687 に答える