RadDock vs WebParts comparison list


To compare RadDock and Webparts, I did some research and I found few points that can help you make a decision as to which control to use.  Both provide your user's a personalized experience. Below are my findings.

Features of Webparts and RadDock

WebParts provide the following features out of the box:

  • Adding new WebParts to the page
     
  • Editing the content of a WebPart
     
  • Binding WebParts

These features are not built-in to the RadDock control but can be easily implemented.

RadDock provides:

  • [Live] resize functionality
     
  • Rich client-side API
     
  • Animations
     
  • Smooth drag and drop
     
  • Cross-browser compatibility
     
  • 13 built-in Skins

Ease of development

RadDock allows developers to create dynamic pages, the content of which can be personalized by end users and then the changes are saved and later restored to the last state.

Built-in features are available to support rapid development and can be customized as per the requirements. RadDock also has skinning and CSS support.

Save state in cookies for statically created RadDocks.
Dynamically add or delete RadDocks via Ajax and save their state in the session

Microsoft WebParts allows developers to easily create a portal, i.e. they represent the parts for creating and personalizing page layouts, contributing content, uploading documents, etc. Webparts has to be designed from scratch but can be built into a separate DLL and installed in the GAC to reuse across applications.

The creation of Webpart and adding skin/css requires work from scratch, but provides  high level of customization.

Personalization

Available Features:

ASP.NET Webparts allows personalization with two types of control:

Shared control: - An authorized user can personalize both Shared and User scoped properties on the control for all users. In the case of a dynamic control (a control that is added to the page programmatically, or from a catalog of controls), an authorized user can permanently delete it for all users. In the case of a static control (a control that is declared in the markup of an .aspx page), it cannot be deleted, although an authorized user can close the control for all users.

Per-User control: - The control cannot be personalized with the page in the Shared scope, because the control does not even appear on the page. The control only appears when the page is in the User scope.

RadDock controls are always in shared mode and allow all users to interact with them, but you can customize them to persist/Not-persist the changes in a layout state as per the user.

Ease of Customization:

For custom personalization you need to create a custom provider class in ASP.NET WebParts. The WebPartPersonalization class implements the logic necessary to carry out personalization actions.

Customization of RadDock would be much easier as more focus would be on logic rather than the look 'n feel. RadDock allows the saving/loading of a layout so there is no need to create a custom provider.

Pros and Cons:

  • The biggest drawback of WebParts is that it does not open the properties section inside the WebPart. Instead, it opens in a zone on the main screen.
     
  • An even bigger drawback of WebParts is that you can't edit the properties while in catalog view. To switch between the two, you need to do a postback.
     
  • For RadDock there's no need to implement a provider. Instead it requires customizing the scope and persistence of a user's layout.
     
  • WebParts work only when in admin mode.
     
  • Webparts are using the table layout which in it of itself seems problematic in some cases.


References:

http://demos.telerik.com/aspnet-ajax/dock/examples/myportal/defaultcs.aspx 
http://msdn.microsoft.com/en-us/library/z36h8be9.aspx">
http://www.telerik.com/community/forums/aspnet-ajax/docking/comparison-with-the-asp-net-web-part-framework.aspx
http://www.telerik.com/community/forums/aspnet-ajax/docking/comparison-with-the-asp-net-web-part-framework.aspx