如何在Visual Studio的Mac上编译C#应用程序?

时间:2018-09-10 17:30:57

标签: c# macos visual-studio

基本上,我的学校只有Mac计算机,但是它们告诉我学习C#,并使用Visual Studio进行学习。但是,学校课程是相当新的,项目是自学的。我一直在使用Visual Studio在C#中进行编码,到目前为止,它一直在工作-它已成功运行,并且一切正常。但是,我似乎找不到找到将代码导出或发布到独立应用程序中的方法。我曾尝试使用WineBottler将.exe转换为.dmg,但似乎无法正常工作。

我应该怎么做?不能选择迁移到Windows或其他IDE /编译器。我目前正在控制台应用程序中创建项目,但如有必要,我可以更改它。

3 个答案:

答案 0 :(得分:1)

使用Mac创建和编译.NET CORE控制台应用程序应该没有问题。这些应用程序将具有有限的.NET功能,没有.exe文件,并且与平台无关。 Here is a quick guide您可以参考来确定.NET CORE是否适合您。

如果您尝试创建WinForm应用程序或类似的应用程序,则不能在Mac上执行此操作。有一些使用Wine或其他工具的“解决方法”,但是我对这些选项的经验充其量是次优的。如果您需要创建这样的应用程序,则 best 选项是在Windows计算机上编程。也许要求您的学校启用Bootcamp并在一台Mac机器上安装Windows 10 OS。

答案 1 :(得分:0)

经过大量的实验和研究,我发现,尽管您可以在Visual Studio for Mac中发布.NET Core控制台应用程序,但该程序的GUI不支持该功能(无论出于何种原因)。 为了发布,您必须在解决方案资源管理器中按住Control键单击该解决方案,然后通过单击工具>在终端中打开在命令行中打开该项目。 在那里,输入命令:     dotnet发布-c发布--framework netcoreapp2.1-运行时osx-x64 这将在v2.1 .NET Core框架上为64位Mac OS创建一个独立的程序。可以针对不同的操作系统更改运行时,并且可以根据使用的版本以及与程序的任何插件兼容的版本来更改netcoreapp的版本号。 最终产品将在yourprojectfolder / yourprojectname / bin / Release / netcoreapp2.1 / osx-x64 / publish中找到

答案 2 :(得分:0)

如果您使用的是 OSX,则可以使用终端生成 exe。您可以关注this post

它需要:

  • Mac 版 Visual Studio
  • .cs 文件
  • 终端中的几行