Knowledge is power. We love to share it.

News related to Mono products, services and latest developments in our community.

denis

Data access layer in MonoX

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
We received a lots of comments and questions regarding the data access layer in MonoX. Many of our new users never heard about LLBLGen Pro - an Object Relational Mapping tool of our choice, and they consider it as too exotic.

MonoX lets you choose the DAL generation tool that will be used in your portal projects. We used various ORMs in our projects (NHibernate, Subsonic, ...) but LLBLGen remains our favorite due to the richness of its features and the very high level of the support provided by its authors. Of course, we don't want to avoid LINQ - MonoX was concieved when LINQ was in the alpha stage, but we quickly started to adopt it. Essentially, LLBLGen still offers a richer set of features, but if you are in doubt, guys from Solutions Design recently developed Linq to LLBLGen - now you can use both technologies interchangeably.
denis

ASP.NET routing support in MonoX

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
Service Pack 1 for the Microsoft .NET Framework 3.5 introduced a number of important changes, including the ASP.NET routing engine. Although routing is traditionally associated with ASP.NET Model View Controller (MVC) framework, Microsoft decide to package the routing logic into the System.Web.Routing assembly and to release this assembly with SP1. This was a nice move, since it enabled us to easily integrate the routing technology into MonoX...
denis

MonoX declarative parameter binding

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
Declarative parameter binding is one of those small gems that will save you a lot of time that was usually spent of writing QueryString parameter retrieval code. We started for an idea that was described a long ago by a guy named Piers Williams on CodeProject. His article discusses a reflection/attribute based strategy for automatic population of instance fields and properties on an ASP.NET page from parameters supplied via properties of the Request object - GET-based Request.QueryString or POST-based Request.Form...
denis

Application Optimization in MonoX

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
Last month we've published an application optimization package - Web Application Optimizer (WAO) - with features that include HTTP compression, ViewState optimization and CSS/Javascript optimization. WAO significantly increases the response time for Web applications of all sizes, and, most importantly, there is no need to modify the source code of your applications!

The package works in very different application scenarios and we've got plenty of useful feedback from the first group of users. There has been a slight confusion related to the availability of WAO in our MonoX framework. I wanted to formally announce that  WAO is available by default in all versions of MonoX. It is easy to tell if the WAO is active by the absence of big ViewState data chunk from the page source.
denis

Blog modules

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
New version of MonoX was published today, featuring many improvements in back-end functionality (especially data access) and a brand blog module set. Although MonoX can be completely integrated with third-party blog tools like DotNetBlogEngine, our users often requested a custom subsystem that can be customized using standard MonoX administration utilities. So here it is, an easy to use module set that offers a complete functionality of "stand-alone" blog engines...
denis

MonoX as a Social Networking platform

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
You may noticed that we've been quiet for the last couple of months. The vacation season is not the primary reason for the lack of updates - quite contrary, we are adding new features to MonoX on a daily basis. Just to give you a test of things to come, here is a short list of features that will be included in the next version that will be released later this year:

- MonoX is switching to .NET 3.5, allowing us to use LINQ, Dynamic Data, portions of MVC technology and similar stuff in the core libraries
- we have switched to the Web application project model, as it offers way better development experience on larger projects - compilation process is now shortened dramatically
- we have introduced some exciting changes to the licensing scheme - more on that later
- MonoX will include a complete Social Networking module set: friend lists, invitations, messaging, wall, notes, groups, profiles...
Stay tuned for more news and let us know which features do you want to see included in next releases.
denis

Template gallery

04/06/2010 By denis 4
Rated 1.00, 2 vote(s). 
Bookmark and Share
Designing new portal themes or templates (we use both terms, template is a set of all files needed to give a portal a certain look and feel, while a theme is just an ASP.NET theme) is one of the tasks that our users perform very often. The process is described in the user manual, but sometimes it is difficult to grasp what exactly needs to be done in order to produce a fully functional portal theme, especially if you don't have any experience with ASP.NET themes and master pages. We decided to publish a design template gallery to provide our users with ready-to-use designs that could be used instantly. You just need to unzip the template package in the root folder of your portal and start to use the new page template.

There is just a single Theron template in the gallery at this moment, but it will grow steadily over the next few months. All templates are free for MonoX users.
Please take a moment and study the structure of the package. In essence, a portal template is just a set of images and CSS files placed in the appropriate App_Themes folder. This theme is than applied to the template's master page (placed in /MonoX/MasterPages folder, but could be placed elsewhere). You can than just use this master page for your content pages. Additionally, MonoX allows you to place all control templates in the App_Templates folder to control all visual aspects of the portal controls.

UPDATE: We have moved template gallery source code to GitHub so please use this repository as starting point.
denis

MonoX Localization (Obsolete)

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
Please note that this article is obsolete, please read the following article for more information ASP.NET localization settings in MonoX

Localization is one of the areas in which we made a very significant progress during the past few years. First release of MonoX included only a default support for localization: you were able to localize the user interface elements using the standard .resx approach, but you had to open an additional portal for each of the target languages that were required for localization. Content synchronization was rather difficult, so we decided to redesign this feature and introduce a flexible arhitecture with support for run-time localization. This means that you don't have to use Visual Studio or other tools to change localization resource files; everything can be done through the browser-based administration interface.

A single portal instance can support unlimited number of localized sites, where each site has the same structure, but different (localized) content. You can change the navigation hierarchy and modify the layout of every localized page. Each of the existing pages (administration etc.) can be fully localized using the Language management section. Note that MonoX can use both resource (resx) files and a database to store localization values. You can switch between resx and database modes by changing the globalization tag in the Web.config file. The database mode is specified by adding the following attribute to the globalization key:

resourceProviderFactoryType="MonoSoftware.Web.Localization.DBResourceProviderFactory, MonoSoftware.Web.Localization"

This feature gives you a complete control over the localization process, since it would be impossible to localize all resources at run time (both built-in and custom ones) using only a resx approach. It is possible to export values from database to resx files and vice versa, both for a single page/control or for a whole portal at once. Additionally, MonoX uses a translation engines to suggest a correct translation for each localization resource.

The default portal demo at http://monox.mono-software.com has its localized Croatian version at http://monox.mono-software.com/language/hr-HR/Default.aspx 
denis

Fighting spam with MonoX

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
Blog comment spam has been a massive frustration for our users over the last few months. Although the original release of MonoX blog subsystem followed the Google recommendations for preventing comment spam, the guys behind this obviously lucrative business don't really care about "nofollow" tags - they are submitting non-relevant comments agresivelly.
This is going to change with the new, "social networking" release of MonoX later this month. We provide a pluggable, provider-based architecture that enables users to pick one or more public antispam services or develop their own solutions
denis

Amazon S3 data provider for MonoX

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
With global workforces and customers spread across the globe, organizations need to provide scalable tools for providing massive amounts of information easily, quickly and securely. However, most of our partners can't afford, or simply don't want, to build huge data centers across the world to support this requirement.
This is where Amazon S3 steps in: it provides a simple Web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the Web. It gives any developer access to the same highly scalable, reliable, fast, and relatively inexpensive data storage infrastructure that Amazon uses to run its own global network of Web sites.
MonoX now includes a data provider that hooks into Amazon S3, allowing users to store their data in the cloud and not on a database or file server somewhere in house. Best of all, this functionality is totally transparent to the end user, and site admins can access it via the familiar file explorer interface that is identical to the standard GUI. Additionally, power users can develop their own file providers for other storage services by extending the FileBrowserContentProvider class and implementing the IFileContentProvider interface.
<< ... 6 7 8