Telerik SiteFinity - first impression

At the We Are Microsoft charity event last weekend, our team decided to implement a solution using a CMS product so they easily would be able to update the content. We decided to use Telerik SiteFinity based on the repution of Telerik and the fact that they had developer training the first day. Perhaps not the strongest reasons to pick a product but in our case we did not regret picking SiteFinity. The Web CMS Report have categorized the most well known CMS products, SiteFinity is categorized "Mid Market Challengers" which from what I can tell is an accurate categorization.

We used SiteFinity version 3.5 SP 1. The intial setup was a bit painful because the MSI installer didn't work too well on my Vista laptop but thankfully evengalist Gabe Sumner pointed out during the training that you can download a SiteFinity Visual Studio solution from sitefinity.com . The solution file is a Visual Studio Web Site template, I would have preferred a Web Application Project but I assume it's easy enough to change if you really want to change it.

SiteFinity plugs into the regular VS template pretty nicely. You will without a doubt want to add your own master page and the good news is that you just add it like you would in a normal ASP.NET web site. You need to add a script manager in the markup though like this:







You also need to add a theme to the App_Themes folder. This is where you put your css files and images that you use in the header/body/footer via your master page. Once you restart your worker process or the web server if you use Cassini, both the master page (template) and your theme should be visible once you edit a page. If you select a the template and the theme you created earlier, you should get the look and feel your expecting.





This is the basics to set it up, I will go into more detail after adding more functionality.

What I like about SiteFinity so far:

  • WSIWYI Editor for editing content.
  • Very easy for non-technical people to learn to use with a little training. Of course, you still need to know some basic HTML to make it look right.
  • Workflow enginge in the Standard version, which is nice to have. I haven't had a chance to use it yet though.
  • User controls hooks into SiteFinity in a nicely, allowing drag-and-drop in the GUI. You do have to add an entry into the web.config file though.
  • It's relatively inexpensive, I don't think $899 is much money for a commercial organization for a CMS product where you get support.
What I don't like:
  • All pages appear to use ViewState by default, whether it's static text only or a form. I think ViewState in general is way overused in ASP.NET web forms in general, I wish Telerik didn't fall into this trap as well but perhaps there's a good reason.
  • I really don't understand why even images must use an Httphandler ASHX but perhaps it's not as heavy handed as it seems to be.
  • Error handling seems a little sparse. Both during the setup and if it can't find the database when you run it, you get uncaught exceptions.
  • ASP.NET 3.5 has been out for a good while now, you expect products to use 3.5 instead of 2.0 by now.
All in all, I really like this product and I'm glad I got a chance to try it out. The road map for version 4 looks pretty interesting. I wish they would have mentioned using the ASP.NET MVC framework instead of the ASP.NET Web Forms though.

  1. gravatar

    # by Georgi Chokov - January 27, 2009 at 2:50 AM

    Hello,

    I want to elaborate a bit on things you don't like:
    1. Viewstate
    You could disable the ViewState from almost all the controls you drag and drop on your pages. Simply click the Edit button, and find the "Enable ViewState" property

    2. HttpHandlers
    This is the only way to handle the request, and to forward it to the Asp.Net ISAPI. Since we are pulling out the images from the database, we need our code to run and do this, but not IIS to serve the content from the file system.
    You can always use regular files or images for your pages though. The file manager allows you to manage these files.

    3. Error handling
    We do not catch most of the errors by purpose. Since Sitefinity is intended to be more a developer tool, what speaks to the developers in the best is way, is the error and the stack trace. You see exactly what is going on, not just a plain text.
    When you deliver the web site to the client, you may catch all errors in the global.asax Application_onError handler, or provide custom error pages.

    4. NET.3.5
    A version using the native Net 3.5 has just been released ;)

  2. gravatar

    # by Magnus Lassi - January 27, 2009 at 6:59 AM

    Thanks for the comments George! I will definitely check out the new version that supports 3.5!

  3. gravatar

    # by Gabe Sumner - January 27, 2009 at 10:50 AM

    Hey Magnus,

    Thanks so much for your feedback! Please keep it coming!

    Georgi hit the highlights above. However, regarding .NET 3.5 support, read the comments on this blog post.

    This stuff is always more complicated than it seems. Supporting both platforms (for now) became the best choice. :)

    I'm glad we're now formally supporting 3.5.