2012-04-13 21 views
2

Ich konvertiere eine funktionierende .NET 3.5 Anwendung nach .NET 4.0 und nachdem ich das Zielframework geändert habe, bekomme ich einen Fehler, den ich noch nie zuvor gesehen habe.string.Join löst eine Ausnahme aus

Mitglied 'string.Join (Zeichenfolge, Parameter Zeichenfolge [])' kann nicht mit einer Instanzreferenz zugegriffen werden; qualifiziere es stattdessen mit einem Typnamen. Hier

ist der Code:

/// <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);    
} 

Offensichtlich etwas 3,5-4,0 geändert, aber ich habe eine harte Zeit, herauszufinden, wie ich diesen Code ändern sollte, um es zu kompilieren. Jede Hilfe wird sehr geschätzt.

Antwort

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); 
    } 
7

Join ist eine statische Methode auf String, es so nennen die Art anstelle einer Instanz wie dieses wow

args = string.Join(" ", s); 
+0

Oh verwenden. Ich fühle mich jetzt dumm. Danke für die Hilfe. – Chev

+0

Gern geschehen :) –

Verwandte Themen