OS X上的Mono与MSVC 2010同行兼容吗?

时间:2011-01-12 06:29:56

标签: c# .net nhibernate mono

我要在工作中开始.NET开发,但可以选择在OS X上使用MonoDevelop / Mono而不是在Windows上使用MSVC 2010,因为我熟悉OS X,所以我更喜欢使用它。我们可能会使用一些流行的框架,比如NHibernate和Castle DI - 我对那些熟悉.NET开发和Mono的人提出的问题:我会处于劣势吗?是否有强烈的不兼容性,或者,通过一些“剪纸”,两个系统大致兼容?同样,我的同事将使用MSVC 2010,我们打算一起处理相同的代码库。

感谢您对此.NET新手的任何见解。

编辑:我应该注意到我将主要使用MVC 2进行开发,我理解 使用Mono,并且在选择框架时会有一些背风,即我可以避免高度不兼容的框架

3 个答案:

答案 0 :(得分:1)

如果您使用的任何库都不会在Mono下执行,Mono Migration Analyzer可以帮助您解决问题。

MonoDevelop正变得非常丰富。我没有遇到很多问题。

答案 1 :(得分:1)

我只能提供一个有限的案例研究 - 我是一家大型游戏公司的工具开发人员,使用.NET / Visual Studio超过5年。我最近离开去帮助创建一个小型新工作室 - 我们正在使用Unity游戏引擎,它使用Mono作为脚本骨干。我现在已经和Mono一起工作了大约8个月,而且我发现自己想要使用的.NET库都没有我注意到的任何不兼容性。

非常有限的抽样,因此不太可能涵盖所有用例 - 主要是System,System.IO,System.Xml,System.Web,System.Collections(.Generic)和其他基本内容。

Mono Develop到目前为止一直很合理,但并不像VS那样功能丰富。

免责声明:我们不会将编译交叉到MS.NET和Mono。

答案 2 :(得分:0)

MonoDevelop可以毫无问题地打开VS 2010项目。
但是,您将无法使用mono 以图形方式开发 WinForms。

Nhibernate可以正常工作,但使用MonoDevelop进行调试很难,而且单步执行并不真正有效。
换句话说:这是可能的,但你处于明显的劣势。