Also ich versuche, eine Anwendung zu erstellen, die das Lesen von Skripts in einem Unterordner namens "Skripts" erfordert. Mein Code Ich habe Probleme mit:
Directory.GetCurrentDirectory() funktioniert nicht auf Linux?
string script = Console.ReadLine();
string path = Directory.GetCurrentDirectory();
string sciptpath = path + "/scripts/" + script;
Dies funktioniert unter Windows in Ordnung. Aber unter Linux (läuft mit Mono Runtime) geht es zum aktuellen Benutzer-Home-Verzeichnis ... und nicht zum Verzeichnis der ausführbaren Datei. Ist das ein Fehler? Und kann jemand einen Workaround vorschlagen?
Haben Sie in Mono-Kompatibilität gegen http://www.mono-project.com/Compatibility? Sie können auch das Mono Migration Analyzer (MoMA) -Tool ausprobieren, mit dem Sie mögliche Probleme bei der Portierung Ihrer .Net-Anwendung auf Mono (http://www.mono-project.com/MoMA) erkennen können. –
Nicht Ihr Problem/Ihre Frage, aber verketten Sie keine Pfade, verwenden Sie stattdessen Path.Combine: string scriptpath = Path.Combine (Pfad, "Skripte", Skript); - Es wird sowohl auf Windows als auch auf Linux funktionieren. –