MVC3 and MonoDevelop

Just a quick update to list the assemblies you need to copy to make MVC3 work with Mono and MonoDevelop. On my Mac I opened a Visual Studio solution, I deleted all the entity framework references from my MVC project, won’t use it anyway, and then copied these assemblies to a local folder since they are not part of the Mono framework:

  • System.Web.Helpers
  • System.Web.Mvc
  • System.Web.Razor
  • System.Web.WebPages.Deployment
  • System.Web.WebPages
  • System.Web.WebPages.Razor

Fix the references in your project, hit run and you’re good to go. Unfortunately you’re not getting any intellisense yet.

Mono 2.4 and MonoDevelop 2.0 on OSX

I installed Mono and MonoDevelop again this week but found out rather quickly that not much has changed in MonoDevelop since the last time I used it. MD went 2.0 recently while Mono is now 2.4.

I probably should have guessed that all the problems I ran into using MD were still not resolved because of the red letters on their site discouraging using MonoDevelop on the Mac. On the forums however I found out that in the next version a lot of improvements should make it into the Mac distribution.

Mono is closing in on .Net, it was good to see that a lot of the c# language enhancements as well as new .NET features have made it into the platform. Including automatic properties, lambdas, etc. Linq is said to be supported as well but I was unable to write even a simple query. I never got the select statement to work. Could be me though.

What I did find interesting was how you can create native looking applications for almost every platform while using the same Mono core of your application. I really want to try that out! On the Mono site you get linked to Cocoa# for OSX but that project seems to be rather silent though a user made a recent contribution. I did like the way on how you could use the existing development tools available, xCode and Interface builder so you would not need to learn another application. There’s a video demonstrating the approach.

A more active project, with the latest version released in March, is Monobjc which seems to have the same goal as Cocoa#. I’ll probably try this one out first. Anyone with some Objective-C and Cocoa experience will recognize the way it works in this tutorial. Though at first glance you can’t use xCode to write your c#.

Oh yeah last time I checked you can use Spring.Net with Mono too.

Monodevelop on Leopard

Since last week I’m the proud owner of a MacBook and I’m exploring this new world. I want to try out Mono with Monodevelop, since I’m a .net developer, but their Mac support seems to be lacking. I’m using the latest version of Mono (1.9.1_3) and Monodevelop (1.0) and am unable to add any projects to a solution. The documentation states I need to right click (control click on a Mac right ?) the solution and then select Add > new Project, but I don’t get any context menu.

I’m guessing it’s my own fault and not theirs. Where’s my menu!?

Edit: after going through the MD bug tracking pages I found several issues related to this behaviour: bug 359734 and bug 367055