Upgrading nightmare with TFS 2010

4 posts, 0 answers
  1. Daní
    Daní avatar
    314 posts
    Member since:
    Feb 2008

    Posted 26 Jul 2011 Link to this post


    Maybe I'm doing something wrong but each time I try to upgrade silverlight controls from VS telerik's extension is nightmare with TFS 2010. I have a TFS 2010 instance to manage versions and synchorinize solution when I'm working home or at office. Recently, I released a version of my application using 2011 Q1 SP1 telerik's dll and I'd like to keep this version using Q1 SP1 while start using 2011 Q2 with the new version branch. I just downloaded the telerik's Q2 2011 dll's when telerik's extensions for Visual Studio prompted to get them. Everything worked fine and I the latest version was downloaded on my AppData/Roaming/Telerik/Updates/RadControls_for_Silverlight4_2011_2_0712_Dev_hotfix folder. I did this operation on my labtop at home. I upgraded telerik's references on each project in the new solution branch and it worked fine. I performed a check in. The next day, at office, I repeted the operation on my computer and problems, as always I tried this, began to appear.After a Get Latest Version I needed to re-upgrade telerik's references on ecah project and perform another Check in. Then, at home, I got the latest version and surprise... on my labtop, the new branch solution was pointing to old telerik's assemblies at installation folder (Program Files(x86)/Telerik/...

    The only way upgrading runs in my scenario is replacing installation binaries with new ones. I don't know if it's a VS/TFS 2010 issue or Telerik's, and it doesn't matter, I just would like to know if there's a way to get upgrading and side by side telerik's dll installation for my scenario.

  2. Erjan Gavalji
    Erjan Gavalji avatar
    1455 posts

    Posted 26 Jul 2011 Link to this post

    Hi Daní,

    The problem stems from the Visual Studio project management specifics. The references of a project are kept in the project file (csproj/vbproj). These are maintained as <Reference> node, having a <HintPath> subnode, which helps Visual Studio identify where the assemblies are.

    The automatic RadControls downloads, performed by the Visual Studio Extensions store the assemblies under the user folder to be able to cope with User Account Control. With that, if your user is named UserWork on your work machine and UserHome on your home machine, the places the Telerik assemblies will get downloaded are C:\Users\UserHome\... and C:\Users\UserWork\.... When the problem fixed for one of the machines, it will reappear on the other unless you have the same users on both.

    Here is a suggestion of how to handle the third-party references so that you can even add/remove assemblies to the project and they will get added/removed automatically when getting the latest version from another machine (be your home machine, or the machine of your colleague). Please note, it is your responsibility to have the according numbers of the licenses when others of the team modify the code, related to RadControls.

        - Set up the solution to have a SolutionFolder (e.g. named ReferencedAssemblies)
        - Add a physical folder in the computer (under the physical folder the .sln file exist in), named for example ReferencedAssemblies. Copy the Telerik assemblies used throughout the solution there.
        - Add each of the Telerik assemblies to the Solution Folder (using the Add Existing Item context menu in the Solution Explorer). This way the assemblies there get stored under source control.
        - All the projects in the solution, needing the Telerik assemblies reference them through the ReferencedAssemblies folder (the csproj file gets relative paths).
        - By the time there is a newer RadControls version, change the Telerik assemblies with newer versions following the steps:
            = Remove the references to the Telerik assemblies from all the projects in the solution.
            = Use TeamExplorer to check all the Telerik assemblies out
            = Use Windows Explorer to replace them with their latest versions
            = Use the Solution Explorer to re-add the references to the Telerik assemblies to each project having them referenced before
            = Fix any breaking changes there might be, rebuild the project to ensure colleagues' code won't get broken and check everything back in to the source control
            = Once a colleague gets the latest version from source control, they now use the newer version of the Telerik assemblies too.

    Let me know if that helps.

    Kind regards,
    Erjan Gavalji
    the Telerik team

    Register for the Q2 2011 What's New Webinar Week. Mark your calendar for the week starting July 18th and book your seat for a walk through of all the exciting stuff we will ship with the new release!

  3. Daní
    Daní avatar
    314 posts
    Member since:
    Feb 2008

    Posted 26 Jul 2011 Link to this post

    Thanks Erjan,

    I've implemented your solution, this evening, at home, I'll check if it runs fine.
  4. Wayne
    Wayne avatar
    37 posts
    Member since:
    May 2013

    Posted 14 Jul 2015 in reply to Erjan Gavalji Link to this post

    Works perfectly, thanks!
Back to Top