我有个项目,用MVC4 + EF5开发,买的空间是centos,想迁移过去想咨询下啊,mono现在的版本是否支持.NET4.5 MVC4 EF5这些以及 nginx + mono + centos 环境该怎么配顺便讨论下mono的前景。

解决方案 »

  1.   


    用的CodeFirst?
    EF5中CodeFirst对库结构的变化是不是已经做到很好的兼容性,不会再丢失库内原有的用户数据?
      

  2.   


    是codefirst,ef有migration,应该不会丢失
      

  3.   

    你用的东西太新了。太新了就会存在一个问题,就是那些新特性可能还没有来得及完全被迁移到Mono中,可能你需要重新编译自己来做迁移,如果没办法自己迁移就只能降版本。MVC4和EF5 Mono都有计划去支持它,但不幸的是,在Mono 2.11中才开始支持它,而Mono 2.11目前依然处于Alpha测试中,还没有release出stable版本。MVC3倒是已经被Mono 2.10支持了,因为我已经看到博客园里面有人写文章说怎么配置Mono+ASP.Net MVC3了。有一些小折腾,但这个折腾跟Mono无关,是Apache的配置文件方面的问题,而且是可以解决的问题。至于EF,微软刚刚把EF开源不久,所以EF porting到Mono上的工作虽然已经展开但是时间还不长。
    另外关于Mono的前景,我觉得,Mono的前景取决于Mono团队的代码质量,从我目前用过Mono的项目的情况来看,Mono的代码质量还是不错的,没有出过什么很过分的bug,稳定性也经住了考验。注意,面对一个bug,无论是功能性的bug还是稳定性方面的bug,不是因为你用了mono所以一出bug就全推到Mono头上去了,bug可能和你的code有关,可能和运行环境有关(比如你所用的Linux和Apache、nginx ),有没有那个bug是我发现真正因Mono而引起的?目前还没有,就像我在Windows下用.Net目前还没有发现哪个bug是Microsoft.Net Framework引起的。不是说Mono和Microsoft.Net Framework就没有bug,而是说这样的bug即时存在也不容易遇到,可能遇到了也有相应的work around。至于别人用不用Mono,跟你没关系,你只要用就行了。国内关注Mono、用Mono的人还是凤毛麟角,所以多看看国外的论坛和国外的案例,别受国内的风气的影响。可能Mono的使用率只有.Net开发者中的1%,但你用了它,它就是你的100%。
      

  4.   


    本人对MVC、EF之类的东西接触甚少,因为不做web开发的缘故,所以平时根本用不到。而ASP.Net MVC、EF之类的东西又恰恰是发展比较迅速的东西。说发展迅速,换句话说就是可能暂时会让Mono跟不上。至于别的.Net的特性,越是基本的东西,越被支持得很好。
    基本上C/S开发的领域,由于用的技术变动没有那么快,所以这方面Mono的支持倒是很完整。
      

  5.   


    多谢眼睛兄的详细讲解,我用的技术着实有点新,主要还是最近2个项目,服务器都我自己负责搭建,所以自己就做主了,其实我考虑这个mono问题,是我个人的一个.NET MVC项目,其实也不需要这么新的技术.NET4应该很好的支持吧?
      

  6.   

    .Net 4.0支持得很好。详情见: http://www.mono-project.com/Compatibility
      

  7.   

    已经支持MVC4了
      C# 5.0 - async support
    Async Base Class Library Upgrade
    MVC4 - Partial, no async features supporte.
    ASP.NET 4.5 Async Pipeline - Needs an parallel processing pipeline with async support, not done.
      

  8.   

    Mono 3.x上支持EF是6版本,这个目前还是在beta阶段,你的EF5是不支持的,只能到Mono发布stable时支持到EF6,因为微软开源的EF版本是6,之前的版本在Mono上都支持哦
      

  9.   

    Mono 目前在国内的用户在逐渐增多,可以看我这篇文章的链接 http://www.cnblogs.com/shanyou/archive/2012/07/28/2612919.html