Как использовать Visual Studio для разработки приложений на Mono? Это возможно?
Использование Visual Studio для разработки моноприложений
Ответы (6)
Вы просто создаете приложения в Visual Studio и запускаете их в Mono, а не в .NET. Бинарные файлы должны быть совместимы... но вам нужно убедиться, что вы не используете какие-либо библиотеки, которых нет в Mono - см. Рекомендации по совместимости моноприложений.
(Согласно этой странице, вам нужно отключить добавочные сборки в Visual Studio — момент, о котором я раньше не знал :)
См. эту статью о том, как запускать приложения, ориентируясь на моноплатформу. от ВС.
Мигель разместил эту запись некоторое время назад, так что она устарела. Вы также можете попробовать это и это (приветствую веб-архив!)
Начиная с версии 2.0 MonoDevelop поддерживает формат файла проекта/решения VisualStudio. Это означает, что вы можете использовать одну и ту же кодовую базу в Windows с VS и .Net и в Linux с MonoDevelop и Mono. Это, на мой взгляд, лучший способ сделать это. Нет никаких серьезных причин для запуска приложения в Mono в Windows, кроме как для целей тестирования, и для этого я бы предпочел настроить виртуальную машину для тестирования программного обеспечения в родной среде.
Я разместил статью о том, как интегрировать Mono 2.8 (сборка для .Net 4.0) в Visual Studio 2010 здесь — там есть ссылка на другой профиль, созданный для Mono 2.4 (.Net 3.5), если это то, к чему вы стремитесь.
Вы можете интегрировать новый профиль Mono 2.8, выполнив 3 простых шага:
- Загрузите сам профиль здесь.
Разархивируйте содержимое архива профиля в один из следующих каталогов:
- 32-bit systems:
C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile
64-bit systems: C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile
- 32-bit systems:
Папка «Mono» в ZIP-файле должна находиться непосредственно в каталоге «Profile».
Перезапустите Visual Studio, если она была запущена, откройте свойства проекта, который вы хотите использовать с Mono, и выберите профиль Mono для версии 2.8:
Примечание. Вы не сможете выбрать монопрофиль прямо из диалогового окна "Новый проект"; по какой-то причине этот список профилей не совпадает. Сначала создайте проект как проект .Net Framework 4.0, а после создания установите для свойств проекта значение Mono.
Если вы обновили установку MonoDevelop до последней версии (по крайней мере, на сегодняшний день), это решение Visual Studio и файл проекта откроются без проблем — никаких изменений не требуется.
Если вы столкнулись с проблемой, что вам нужно .NETFramework,Version=v4.0,Profile=Mono
для запуска приложения, хитрость заключалась в создании ключа реестра.
Для Windows 7 x64 это было: HKEY\_LOCAL\_MACHINESOFTWAREWow6432NodeMicrosoft .NETFrameworkv4.0.30319SKUs .NETFramework,Version=v4.0,Profile=Mono
Я полагаю, для x86 это HKEY\_LOCAL\_MACHINESOFTWAREMicrosoft.NETFramework v4.0.30319SKUs.NETFramework,Version=v4.0,Profile=Mono
(Где v4.0.30319 будет версией текущей установленной платформы 4.0.)
Да, вы можете разрабатывать в Visual Studio и ориентироваться на Mono (Mono для x86).
Вот ответ, который я сделал для всех доступных возможных вариантов компиляции против Mono в Windows. Однако он предназначен для Mono x86. Подводя итог, перечислим возможный выбор для разработки VS:
- Дополнение MonoHelper
- Монопрофиль
Для Android/Ios вы также можете выполнять кросс-компиляцию и отладку внутри Visual Studio с помощью надстройка Xamarin. Хотя это не бесплатно для крупных коммерческих приложений, существует бесплатная версия для создания небольших приложений.
Примечание: Для тех, кто задается вопросом, почему я хотел бы разрабатывать в Visual Studio для Windows, а не в MonoDevelop для Unix, скажем, что опыт разработки в MonoDevelop не сравнится с VS (особенно когда дело доходит до отладчика/рефакторинга, последнее больше связано с Resharper, чем с самим VS).