In my last post, I profiled what you would need to do to get Visual Studio to use the Mono compiler for compiling your Mono projects. I also created 3 basic Mono project templates that are available for download.
Apparently, they have some appeal as they have been downloaded a couple of hundred times, so that’s good.
Also, it looks as though Mono is getting some additional traction and good looks from others in the Microsoft community. That is good, it should.
I have also made it a priority for dashCommerce to run on Mono in future revs as I think this is a huge win for software products in general, but especially so for open source projects.
But, one thing that I left out of the previous post was some Mono item templates. Specifically, some standard stock templates because if you add a stock item (like a Web Form) to your project that references .NET assemblies, you will get this lovely little creature when you compile:
Which is basically telling you that Mono has no idea what the heck the referenced assembly is! So, how to fix it? Well, you need some item templates that reference the Mono assemblies and not the .NET assemblies.
I have gone ahead and created the following templates for use in your Mono projects:
- Class
- Interface
- Master Page
- Web Content Form
- Web Form
- Web Service
- Web User Control
You can download these item templates from here (as well as the Project Templates). Once you download them, you can put them in My Documents\Visual Studio 2008\Templates\ItemTemplates\Visual C#\Mono and you should be good to go.
That being said, there was a recent Beta release of MonoDevelop 2.0 and I am hearing good things about it, so all this may be for naught if it is a solid IDE, but I am easing into this and frankly, I think MS and Visual Studio should support development on the Mono platform. But maybe that’s just me.
March 12, 2009 at 10:55 am
Hi,
The support of Mono means dashCommerce won’t support .net 3.5 / linq?
March 15, 2009 at 9:10 am
Yes and no.
Mono is not on a release to release trajectory with .NET. Meaning, they have features of 3.0 and 3.5 available now, although they are not at a 3.0 or 3.5 release. So, you have things like LINQ and ASP.NET Routing (to allow for MVC) in the 2.2 release of Mono. They seem to focus (smartly) on where the sweet spots are for .NET and get those features implemented pretty quickly.
April 3, 2009 at 4:32 pm
Thanks for the help
The Template for windows forms Do you have?
April 3, 2009 at 6:42 pm
No, sorry. I don’t do too much winform development anymore.
April 30, 2009 at 10:32 am
Hi. I’ve just linked to your articles from my blog. One question: How do you convince an open-source, anti-Microsoft fanatic that Mono is the way to go — even on Unix Solaris servers running JBoss? I’ve had no luck thus far. Thanks.
May 2, 2009 at 3:47 am
Hi.
I’ve compiled C++/CLI code using VS compiler and was hit by this error.. no workaround for me then, since it is C++/CLI?
thanks, Dmitry
November 29, 2009 at 11:37 am
I followed the previous instructions to a tee, but i get an error while trying to create a library project
It is pointing to a directory that was never defined anywhere:
“C:\build\Mono.CSharp.targets” was not found. Confirm the path in the declaration is correct, and that file exists on disk.” This path has never been defined anywhere. Its like its reading a config file from somewhere else and trying to apply settings i didnt create.
Any IDeas? I had several colleagues with the same problem, and I think this is a common issue. People will simply give up on Mono +VS when a first time error occurs, on something that simple.
Thanks
November 29, 2009 at 11:44 am
Did you follow the instructions here: http://chriscyvas.com/2009/02/16/getting-mono-and-visual-studio-to-play-nice-together/ ?
The explicitly call out the build directory and the files in it.