Mac上开发.Net遇到的坑

相信很多朋友都和我一样,使用Mac做为自己的电脑,但是工作中却需要使用.Net的开发环境,但是Mac对于.Net的支持却一直不是很好,时代在发展,微软都成为Github贡献最多的企业,那么Mac中顺利开发.Net的梦想能实现吗?

大家都懂的解决方案——虚拟机

核心依然是在Windows上开发.Net程序,只需要安装虚拟机即可,推荐使用Parallels Desktop,价格不贵,淘宝有大量半价销售,可以使用融合模式。当然,可以找一些其他的免费得虚拟机,都差不多,都会有一个问题——卡。

奇葩的方案——远程桌面

其实这个方案并不奇葩,很多人的Mac唯一不能做的,就是.Net开发,或者说,就是.Net的编译和Visual Studio的使用,所以远程桌面配合Nginx或者其他方案,使用起来也是很不错。推荐使用Micorsoft remote desktop。至于调试JS你是喜欢在Mac环境还是Windows环境,都可以,你可以通过修改HOST或者用Nginx做反向代理,这里就不多说了。

以上的两个方式都是在Windows作为开发的平台,不能算是在Mac上开发,Mac只是一个屏幕和一个键盘而已。下面介绍几个Mac环境中开发.Net的方式。

.net Core 让未来照进现实

其实大家都知道,.net Core是.net的未来,现在Core已经完全支持Mac平台,基本可以与Mac无缝结合,配合VS code使用,整个开发的体验其实是非常棒的。推荐仔阅读:http://www.cnblogs.com/dotNETCoreSG/p/aspnetcore-index.html ,非常棒的文章。

  • 安装
    参考:https://www.microsoft.com/net/core#macos ,如出现坑爹的疑问,试着重启下电脑。
    安装Yeoman,会包括基础的代码,毕竟vs code是文本编辑器,不是IDE,达不到Visual Studio的水准,建项目和初始化项目的时候,不肯能全部敲代码,用这个就可以初始化项目。
    参考:Building Projects with Yeoman
    Yeoman基于npm,对于长期使用Visual Studio开发的同学,可能不太了解Linux和 .Net Core的世界里,请务必知道npm的使用。
  • 使用
dotnet restore
dotnet run

然后通过浏览器就看到 .net 的网页,当然,如果你自己是使用控制台,也是可以的。
因为 .net core是有别于原有的 .net 2.0, .net 3.5 ,.net 4.0 ... ,设计之初的目的就是为了跨平台,所以,可以理解为有别于以前版本的全新框架,所以,与原有的框架暂时无法顺利平移,即使强制转过来,也会有一些很奇葩的问题。

用不惯vs code,xamarin Studio你可以试试

.net core无法兼容前几代.net版本,那么前几代的怎么办呢,vs code 能用吗?
用Mono吧,.net Core的鼻祖,编辑器依然用vs code,但是抱歉,针对调试功能无法很好的支持。用过Visual Studio的人,你跟我说无法调试?呵呵,试试xamarin。
xamarin Studio是一个IDE,不仅可以开发 .net,还能开发Android和IOS程序,这个大家应该都知道,这里就不多说了。
Visual Studio能很好的支持断掉调试,支持MVC,虽然不如Visual Studio,但是基本的使用还是很方便的,智能提示也能及时的响应,相对也是一个不错的选择。

总结

虽然上面介绍了多种我自己尝试的在Mac下开发.net程序的方案,但是每种方案都有不足之处,究其原因,还是因为 .net 在Linux平台属于一个相对小众的产品,但是随着Micosoft逐渐和Linux越走越近,.net core逐渐得到任何越来越多的认证,近乎完美的解决方案迟早会出现,但是现阶段,依然还需要忍耐。
以上方案在使用过程中,总会有各种的痛点,希望能尽快得到解决。例如:对MVC的版本支持有些差异、部分.dll不兼容、甚至还会出现大写小写不兼容的情况。PS:开发的习惯真的很重要,如下的两单代码就是有区别的。

return View("~/Home");
return View("~/home");

在Windows下面,两种写法都是可以的,但是在Mac下,呵呵~~~。


欢迎大家关注我的公众号交流、学习、第一时间获取最新的文章
微信号:itmifen

img_054e28db67b2b584091c95441ebc372f.jpe
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值