The Sitefinity team put a lot of effort into making Sitefinity upgrades trivial (or mostly trivial). With 3 major releases per year (and service pack in between) the upgrade experience needs to be extremely streamlined.
However, the upcoming 4.1 release (planned for this Wednesday) includes a pretty big upgrade to a core component of Sitefinity. I’m specifically referring to the upgrade of OpenAccess ORM. OpenAccess beats at the heart of Sitefinity and it determines how data is persisted and retrieved.
In the post below I’ve outlined:
- What’s changed
- Who will it impact
- How to upgrade
What’s changed? – OpenAccess ORM & Fluent Mappings
Telerik has a product dedicated entirely to data access. This product (called OpenAccess) enables developers to define data models using C# & VB code. OpenAccess will then become responsible for persisting or retrieving this data to the database. The primary benefit is productivity since developers no longer need to hand-write CRUD. However, the secondary benefit is performance optimizations. OpenAccess includes a lot of clever fetch plans, caching and a variety of other features designed to retrieve data quickly.
Prior to this release, we were out-of-sync with the OpenAccess releases. In addition, the Sitefinity team had created a few proprietary features that were unique to Sitefinity. This made it difficult for us to integrate the latest & greatest OpenAccess releases into Sitefinity.
With this this 4.1 release Sitefinity is fully integrated with the current OpenAccess ORM Q1 2011 release. Which means Sitefinity inherits the latest benefits of OpenAccess. In addition, we’re guaranteed to continue inheriting these benefits with each new release (4.2, 4.3 and beyond).
One of latest OpenAccess highlights is the Fluent Mapping API. This API enables developers to define code-only solutions (no more XML!!!) for persisting objects. This will become useful when creating custom Sitefinity modules. These modules can define new data models and Sitefinity (and OpenAccess) will handle the data persistence and retrieval details.
However, this new Fluent Mapping API will complicate 4.1 upgrades for some customers. Keep reading…
Who is impacted? – Custom Modules using OpenAccess
The easiest way to determine who is impacted by this change is to ask 2 questions:
- Have you created a custom module for Sitefinity 4?
- Does your custom module use OpenAccess for data access?
If you answered “Yes” to both of these questions, then you need to spend some time with Slavo’s blog post.
If you answered “No” to either of these questions, then you will not be impacted. Follow the normal upgrade instructions (linked below) to upgrade your Sitefinity project.
How to upgrade? – Helpful resources for everyone
As mentioned above, only customers who created custom Sitefinity 4 modules that utilize OpenAccess will need to take special consideration during this upgrade. Everyone else should follow the normal upgrade instructions to upgrade their Sitefinity 4.0 web site.
- Documentation: Sitefinity Upgrade Instructions
- Blog: How to upgrade Sitefinity web sites
- Blog: How to make custom Sitefinity modules compatible with Sitefinity 4.1
If you’re interested in more information about Fluent Mapping, then check out the following OpenAccess related links: