Telerik blogs

Latest

  • Productivity

    The Telerik CAB Enabling Kit and SCSF – Tutorial 3: RadTabWorkspace

    Hello everyone, and welcome to the third tutorial in my series of tutorials about the Telerik CAB Enabling Kit. Over the next two weeks, I will be covering the two workspaces provided with the TCEK. This week, we will learn how to use the RadTabWorkspace. I will be using the completed project from tutorial 2 as the base for this project. If you have not completed the second tutorial, I suggest doing so before completing this tutorial. You can find it here. Otherwise, click here to download the source code that we will be using, fire up visual studio, ...
    May 27, 2021 4 min read
  • Productivity

    Using the ObjectScope events

    Telerik OpenAccess ORM ObjectScope comes packed with all the events that are needed for managing the lifecycle of your persistent objects. You have events for Add, Remove, Refresh and Update actions. They come in –ed and –ing flavors which would mean that you can successfully iterate with your data before the changes have been made (-ing events) and after the changes have been done(-ed events) . You can subscribe to any or all of them and successfully perform some business logic over your persistent objects. Here is a basic implementation of a generic (in terms of availability for both ObjectScope and ObjectContainer)...
    May 27, 2021 2 min read
  • Productivity

    The Telerik CAB Enabling Kit and SCSF – Tutorial 2: UIExtensionSites

    Hello everyone, and welcome to the second tutorial in my series of tutorials about the Telerik CAB Enabling Kit (TCEK). This week I will be talking about the UIExtensionSites supported in the TCEK. The TCEK comes with a number of UI Adapters that provide support for the following controls. RadMenu RadToolStrip RadPanelBar RadTreeView These controls are supported through the registration of custom Adapter Factories and Command Adapters. Adapter Factories simplify the task of creating custom UI Adapters for individual controls. Command Adapters allow you to add invokers and/or set command status on specific controls. In the last tutorial, we created ...
    May 27, 2021 13 min read
  • Productivity

    LINQ Tip of the week: LINQ and Anonymous types

    Today we have a closer look at using LINQ and anonymous types and it's pros and cons. Consider the case where we want to obtain a subset of data instead of an entire persistent instance. For example, if we want to obtain the contact details of all Customers based in London we would use the following query var query = from c in scope.Extent<Customer>()                    where c.City.Equals("London")                    select new { c.City, c.Address, c.ContactName };   Notice the last line in the above query - select new { c.City, c.Address, c.ContactName } This line creates an anonymous type. Behind the scenes, at compile time, a very simple class is generated automatically. In this case, three...
    May 27, 2021 3 min read
  • Productivity

    Telerik OpenAccess ORM and the Second Level Cache

    As we already mentioned last week, Telerik OpenAccess ORM manages two cache levels – one specific for each ObjectScope instance and another shared by all scopes. The shared cache is generally called the "2nd level cache" or the "L2 cache". Its main job is to hold copies of the database content in memory. The L2 cache is populated during read access and gives fast retrieval of commonly used objects. This could be extremely helpful in multithreaded applications, where every single thread has its own ObjectScope. In order to avoid too many calls from each scope to the relational server, the L2...
    May 27, 2021 3 min read