The latest version of Mono 2.6 and the Mono Graphical editor MonoDevelop 2.2 was released in December, and with this version Mono is now more compatible with regards to Microsoft .NET 3.5 API's.
This version also includes open sourced ASP.NET MVC, ASP.NET AJAX, and Microsoft's Dynamic Language Runtime. The latest version of Mono 2.6 and MonoDevelop installers can be downloaded at http://www.go-mono.com/mono-downloads/download.html. Source code can be downloaded here.
Recent changes in the Mono 2.6 framework include the following.
* LINQ to SQL (in System.Data.Linq.dll) development and testing is finished in this edition, so developers can now use this now.
* Released new Mono Soft Debugger. This soft debugger is a component of the Mono runtime environment. The physical component Debugger.Soft.dll API with different IDEs can be used to communicate with the target source.
* Mono Framework 2.6 will now partially support C# 4.0.
* New functionality has been added to the System.Core. Dynamic language runtime (DLR) can now be distributed separately as part of .NET 4.0 profiler.
* Bug fixes for the Winforms completed and tested. Mono implementation of MSBuild is now added with the latest release: XBuild.
* Support of Generics has been improved. The documentation tool for mono that is Monodoc has been updated and several bugs have been fixed.
* System.IO.Packaging was not part of the Mono Core Framework. In the old version it was part of Olive (add-on libraries for the Mono core) Library, but with this version its part of Core Mono framework.
* In the previous versions of Mono, Windows Communication Foundation (WCF) was not part of the core framework. It was part of experimental development more specifically under the .NET Compatibility Stack. From this version of Mono, it's now part of Core Mono Framework.
* The Microsoft Silverlight 2.0 components have been exposed by Mono as Moonlight 2.0. As of now, Moonlight 2.0 is supported for 32 and 64 bit Linux operating systems only. In this article we will be discussing Moonlight 2.0 and its features.
If you don't know what Silverlight is, Microsoft describes it like so: "Silverlight is a cross-browser, cross-platform, and cross-device browser plug-in that helps developers design, develop, and deliver applications and experiences on the Web."
Moonlight version 1.0 was released in February 2009, and it was compatible with Microsoft Silverlight 1.0. It was fully based on C and C++ language no .NET language was supported, but developers can do client side scripting using Java Script.
Moonlight 2.0 is a Silverlight 2.0 compatible framework that supports Zoom, Control Framework and Layout Framework. Its C# and other DLR (Dynamic Library Runtime) based. Moonlight 2.0 can also play Audio and Video files. Upcoming versions of Moonlight will support 3D graphics, webcams, microphone etc.
Moonlight 2.0 Components and Dependencies
As of now, Moonlight is supported for Linux and other Unix/X11 operating systems -- no implementation for the Windows platform has been released. The Moonlight 2.0 Package can be downloaded at http://www.go-mono.com/moonlight/download.aspx, and the latest source code can be downloaded at http://ftp.novell.com/pub/mono/sources/moon/2.0/.
Moonlight 2.0 has some external dependencies.
1. Gtk+ 2.0 development package will be required for Moonlight developers.
2. ffmpeg from SVN. The source code can be downloaded at http://ffmpeg.org/download.html. This package is required if you want to play media files only.
3. XULRunner development package. This is required for the client environment browser. The Mozilla package is required if developers want to develop browser-based plug-ins.
4. Alsa and/or PulseAudio development packages. See below for the component architecture for Moonlight 2.0 Framework.
Moonlight Version 2.0 Development
Moonlight Framework is used for:
* As part of the Moonlight Web Plugin, to render online Silverlight content for Mozilla.
* As a standalone library to create desktop applications for Linux that can use the Silverlight API.
The Web version of Moonlight 2.0 uses the same assembly versions, APIs, and signatures that Microsoft Sliverlight uses. When developers develop a desktop-based application with Moonlight, they then can get access to all the standard Microsoft .NET 3.5 API's, libraries, and assemblies. Presently, Moonlight for Desktop-based applications are limited to the Gtk+ toolkit only, but there are plans to create more bridges between the cross platform in the near future. Moonlight is basically an extending of the standard .NET developer APIs with few new assemblies required for Windows-based development. System.Windows.dll
Also For GTK Moonlight.Gtk.dll assembly is used.