Vì vậy, tôi đang cố tạo một ứng dụng yêu cầu đọc các tập lệnh trong một thư mục con được gọi là "tập lệnh". Mã của tôi Tôi đang gặp sự cố với:
Directory.GetCurrentDirectory() không hoạt động trên linux?
string script = Console.ReadLine();
string path = Directory.GetCurrentDirectory();
string sciptpath = path + "/scripts/" + script;
Điều này hoạt động tốt trên Windows. Nhưng trên Linux (chạy bằng cách sử dụng Mono Runtime) nó đi vào thư mục nhà người dùng hiện tại ... không phải là thư mục thực thi. Đây có phải là một lỗi? Và ai đó có thể đề xuất một cách giải quyết?
Bạn đã kiểm tra khả năng tương thích Mono chống http://www.mono-project.com/Compatibility? Bạn cũng có thể thử công cụ Phân tích di chuyển Mono (MoMA) giúp xác định các vấn đề bạn có thể gặp khi chuyển ứng dụng .NET sang Mono (http://www.mono-project.com/MoMA). –
Không phải vấn đề/câu hỏi của bạn, nhưng không nối các đường dẫn, sử dụng Path.Combine thay vì: string scriptpath = Path.Combine (path, "scripts", script); - nó sẽ hoạt động chính xác trên cả hai cửa sổ và linux. –