Continuing our theme of Umbraco 5 Gems we've decided that today
we'll look at the Gems for ASP.NET MVC developers and we've got
some really handy ways which you'll be able to hook into MVC.
Additionally this means that your existing MVC skills will be
usable when developing with Umbraco 5. It also means that a lot of
the skills you can gain from MVC tutorials will be usable in
Umbraco 5.
Convention over Configuration
One idea that MVC touts is the idea of Convention over
Configuration, particularly with the way that it lays out its
project. An MVC project will have folders such as Content
(containing CSS, Assets, etc), Scripts (for JavaScript) and Views
(for HTML) and with Umbraco 5 we're keeping these folders and using
them to store the files which you'll use in Umbraco sites.
Plugins will also use those folders.
Global ActionFilters
MVC has the concept of Global ActionFilters which allow you to
interact with the pipeline and are used for things such as handling
errors. But it does mean that you can use them to extend or
interact with the internals of Umbraco without having to modify the
core .NET code.
Knockout JS
If you haven't looked into Knockout JS I suggest you go do that
now! It's awesome.
With Umbraco 5 we're using Knockout quite extensively to handle the
back office UI state, everything from DocType editing to CSS
editing. This is exciting as it means we'll be shipping Knockout
out of the box with Umbraco so you'll be able to use it yourself to
create powerful back office UIs.
Embedded Views
Sometimes package developers (and the Umbraco core) want to ship
only a single file as part of their package. With Umbraco 5 we're
supporting a way which you can turn the Razor view file into an
embedded resource in your assembly. This means that if you don't
want your HTML available to be edited it can be neatly rolled up
into something that other developers are unable to get to.
And this wraps up part 2 of our Umbraco 5 Gems series. Hopefully
this gives you some cool insights into what's coming for Umbraco 5
that you can use your existing ASP.Net MVC skills with. Stay tuned
for more v5 Gem goodness!