Насколько хорошо поддерживается.NET в Ubuntu 14.04?
Я должен портировать приложение, написанное на C# + WinForms для запуска на Ubuntu. Но насколько хорошо.NET и WinForms поддерживаются в Ubuntu? Если я возьму проект C#.NET + WinForms и попытаюсь скомпилировать под Ubuntu 14, не будет ли он работать при таких обстоятельствах? Я слышал о.NET под Linux, но я не знаю, как далеко это было сделано, или моно все еще единственный путь?
Я бы действительно хотел избежать переписывания всего приложения на C++ и Qt.
1 ответ
Новый.Net в Linux, о котором вы, возможно, слышали, называется .Net Core. Он должен хорошо поддерживаться, но это подмножество.Net Framework, предназначенное в основном для веб-приложений и облачных приложений, и не поддерживает WinForms (или любую другую библиотеку пользовательского интерфейса).
Итак, если вы хотите запустить приложение WinForms в Linux, Mono по-прежнему является вашим лучшим вариантом. Использование этого может работать для вас, а может и нет. Мигель де Иказа сказал в 2014 году (и я предполагаю, что ничего не изменилось с тех пор):
Mono имеет реализацию Windows.Forms, но она и старая, необслуживаемая и, как известно, имеет некоторые ошибки.
Некоторые люди смогли использовать его эффективно, но в настоящее время у нас нет активного сопровождающего, поэтому мы рекомендуем разработчикам выбирать что-то вроде Gtk#.