Может ли моно запускать скомпилированные приложения framework.net (из окружения VS) - PullRequest
5 голосов
/ 30 ноября 2011

Я прочитал много вопросов о запуске кода .net с моно, но у меня всегда один и тот же вопрос.Я сейчас создаю новое приложение, поэтому лучше начать прямо и выбрать правильное направление:

Могу ли я разработать приложение в Visual C # Express или Visual Basic Express, скомпилировать его из среды Microsoft с помощью компиляторовони запускают и запускают это приложение, используя MONO в Linux.

Или мне нужно работать с моно-компилятором с нуля (или впоследствии преобразовать мой MS-проект в моно), чтобы иметь возможность использовать мои .net-приложения с помощьюMono Framework на Linux.

Поддержка Linux / Mac не является обязательной для разработки моего приложения, но я хотел бы получить ее с самого начала.

Спасибо


Что касается API:

Я использую WinForms, Encryption, Globalization, SQLClient, но это, пожалуй, все, есть ли что-то, что вы, эксперты Mono, можете сказать мне, что НЕ использовать offначало.

О, и я использую пространство имен My для всех видов вещей, таких как получение имени компьютера, имя пользователя, ресурсы, настройки и т. д. ...

Ответы [ 2 ]

6 голосов
/ 30 ноября 2011

Вообще-то да, это работает.

Проблема не в перекомпиляции, а в доступных нативных API и библиотеках. Если вы добавите нативное взаимодействие, библиотека, с которой вы работаете, должна быть доступна и в Linux, что явно не относится к библиотекам Windows.

Некоторые управляемые библиотеки вообще недоступны (WPF) или являются неполными (WCF).

Mono имеет реализацию WinForms, но выглядит внешне, так как не использует нативные элементы управления. Это означает, что код будет работать на других платформах, но пользовательский интерфейс не будет приятным.

4 голосов
/ 30 ноября 2011

Все компиляторы для языков .Net компилируются в стандартный MSIL, который может выполняться любой совместимой реализацией, включая Mono.

Однако некоторые сборки, включенные в Microsoft.Net и Visual Studio, недоступны для Monoне-Windows платформы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...