我意识到这有点疯狂,C#是一种Windows语言,但我想开始学习C#主要是因为我对ASP.NET MVC很感兴趣。我白天作为Web开发人员工作,我的办公室完全在* nix机器上运行。开发人员和所有其他工作人员使用Mac OS X,我们的服务器都是Linux的一些变体。
老实说,我只想尝试与PHP,Python或Ruby不同的东西。问题是,我不想放弃我心爱的Mac OS X.我看了一下Mono,看起来正是我想要的。不幸的是,MonoDevelop在Mac OS X上的使用非常缓慢。(除非我做错了,这完全看似合理)。
所以我的问题归结为:在Mac OS X上编写和编译C#应用程序的最佳方法是什么。(运行代码并不是一个大问题,我可能只是得到一些便宜的服务器空间来运行我的ASP.NET MVC应用程序。我不是真的想在Mac OS X上运行任何应用程序。)
答案 0 :(得分:21)
根据我作为C#/ Windows / ASP.Net开发人员的经验,该平台的最大优势是与工具的集成。这就说很难让它全部在单声道上运行。 Mono将是一个出色的部署平台。但如果您想学习 asp.net MVC,最好的办法是建立一个虚拟Windows环境并获得免费的可视化Web开发人员visual studio:http://www.microsoft.com/express/vwd/。
另一个原因是,如果您正在尝试学习该平台,大多数资源将使用Visual Studio的某些变体。我发现尝试学习框架相当困难,并且必须同时解决平台差异。
我说这是一个狂热的OS X用户,已经进行了多年的C#开发,并在asp.net mvc中完成了几个小项目。
答案 1 :(得分:6)
在Mac上运行虚拟Windows机器怎么样?
答案 2 :(得分:3)
+1到Min's answer。
Microsoft提供的工具(免费和购买)非常棒且集成得非常好。 我使用Visual Studio越多,我就越喜欢它。
我强烈建议您在Windows上使用ASP.NET / C#开发(bootcamp或vmware或w / e)。
与您可能在将来可能遇到的潜在兼容性问题相比,当您想要编码时,必须在操作系统之间切换是一个很小的代价。
答案 3 :(得分:2)
我将添加虚拟化参数。例如,如果您要在VMWare Fusion中进行Windows安装,则可以在一致性模式下运行它。在这种模式下,您仍然可以获得OS X中您熟悉和喜爱的所有应用程序和系统,并使Visual Studio看起来好像tit是本机OS X应用程序。但是,VS“看到”Windows环境,因此您可以获得在Windows上开发的好处。
当然,你有两个操作系统竞争资源的开销,但大多数时候这不是一个问题(不管怎么说,这不是我,我在家里以这种方式运行我自己的项目简陋的MacBook)
答案 4 :(得分:2)
如果有人最终解决了这个问题,那么ASP.NET Core现已推出并在Mac上运行。 MS有一个使用ASP.NET Core创建Web API的walkthru详细信息:https://docs.microsoft.com/en-us/aspnet/core/tutorials/web-api-vsc
答案 5 :(得分:1)
在.net中开发非常注重IDE。当然,您可以在普通的旧文本编辑器中完成所有操作,但除非您只编写后端服务器代码,否则它会变得越来越难。也许有很棒的基于单声道的IDE,但我无法理解为什么你总是喜欢使用MacOS,无论如何都要花费所有的时间。
绝对投票支持虚拟化Windows或使用BootCamp。
答案 6 :(得分:1)
我同意虚拟Windows机器和VS Express,但是Mono Develop在特别针对ASP.NET MVC时并不是那么糟糕。
答案 7 :(得分:-1)
您可以在Mac(KDE)上安装Linux桌面并使用wine(Linux windows模拟器应用程序)来安装Visual Studio express。 KDE桌面在mac上运行。现在您不必在您的计算机上安装完整的Windows操作系统。