Building Source for deployment

10 posts, 2 answers
  1. Robert
    Robert avatar
    31 posts
    Member since:
    Apr 2011

    Posted 18 Aug 2014 Link to this post


    I am trying to follow the instructions to create protected Telerik assemblies for deployment with my WPF application.

    I see that in each control folder there is are two WPF solutions (among others)
    *_WPF.sln
    *_WPF_Work.sln

    What is the _Work version  for?   I assume I should use the *_WPF.sln version?  
    Was there some guidance in the documentation about that question that I overlooked?

    However, when I build either version I get errors.  I already successfully built the Core\XCore_WPF.sln  solution.

    Here is an example of an error I get when building the ImageEditor control: (either of the two WPF solutions)

    Error 3 Unknown build error, 'The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) Line 837 Position 26.' D:\Dev\Telerik\Telerik_UI_for_WPF_Source_2014_1_0331\Controls\ImageEditor\ImageEditor\themes\GenericOfficeBlack.xaml 837 26
























































  2. Answer
    Yana
    Admin
    Yana avatar
    4554 posts

    Posted 18 Aug 2014 Link to this post

    Hi Robert,

    The .Work solutions are basically for internal use (they're test applications), you should build the ControlName_WPF.sln solutions.

    Detailed instructions for building the assemblies can be found inside the source code folder in Build/BuildInstructions folder.

    As to the reported issue - please make sure that you've built Telerik,Windows.Controls.Input.dll before ImageEditor as it depends on it. You can find a complete list of Control Dependencies at the following link:
    http://www.telerik.com/help/wpf/installation-installing-controls-dependencies-wpf.html

    I hope this will help.

    Regards,
    Yana
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  3. UI for WPF is Visual Studio 2017 Ready
  4. Robert
    Robert avatar
    31 posts
    Member since:
    Apr 2011

    Posted 18 Aug 2014 Link to this post

    Thank you, that resolved my issues.

  5. Robert
    Robert avatar
    31 posts
    Member since:
    Apr 2011

    Posted 19 Aug 2014 Link to this post

    Not quite there yet, I cannot find the source for this :

    Telerik.Windows.Controls.EntityFramework60

    I'm using Telerik_UI_for_WPF_Source_2014_1_0331

    I expected it would be in this location:
    Telerik_UI_for_WPF_Source_2014_1_0331\Controls\DataSource\EntityFramework



  6. Yana
    Admin
    Yana avatar
    4554 posts

    Posted 20 Aug 2014 Link to this post

    Hi Robert,

    Indeed, Telerik.Windows.Controls.EntityFramework.dll is built for the EntityFramework_WPF project located inside Controls/DataSource/EntityFramework folder.

    What issues have you experienced?

    Regards,
    Yana
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  7. Robert
    Robert avatar
    31 posts
    Member since:
    Apr 2011

    Posted 20 Aug 2014 in reply to Yana Link to this post

    I am using this dll from UI for WPF Q1 2014\Binaries\WPF45 :

       Telerik.Windows.Controls.EntityFramework60   (  !!!  NOTE: '60' this is for Entity Framework 6.0)

    For deployment, I need to build it from source, but that particular assembly is not found here:   

        Telerik_UI_for_WPF_Source_2014_1_0331\Controls\DataSource\EntityFramework

    When I build the EntityFramework_WPF.sln solution there, I get the plain EF dll, not the '60' version.

        Telerik.Windows.Controls.EntityFramework.dll

    So my question is, how can I build the EF 6.0 version of the Telerik dll ?  
    If I cannot do that I am unable to comply with the instructions for protecting Telerik assemblies for deployment.





  8. Ivan Ivanov
    Admin
    Ivan Ivanov avatar
    1128 posts

    Posted 21 Aug 2014 Link to this post

    Hi,

    We use the same proj file to build both Telerik.Windows.Controls.EntityFramework and Telerik.Windows.Controls.EntityFramework60. If you open the proj file in a text editor, you will see that AssemblyName and references are conditionally controlled by a MSBuild property (CustomBuild), which has a default value of false:
    <Reference Include="EntityFramework" Condition=" ('$(TargetFrameworkVersion)' == 'v4.5' OR '$(TargetFrameworkVersion)' == 'v4.5.1') AND '$(CustomBuild)' != 'true' ">
          <HintPath>..\..\..\..\lib\EntityFramework\5.0.0\net45\EntityFramework.dll</HintPath>
        </Reference>
        <Reference Include="EntityFramework" Condition=" ('$(TargetFrameworkVersion)' == 'v4.5' OR '$(TargetFrameworkVersion)' == 'v4.5.1') AND '$(CustomBuild)' == 'true' ">
          <HintPath>..\..\..\..\lib\EntityFramework\6.0.0\net45\EntityFramework.dll</HintPath>
        </Reference>
    If you plan to build only the EF6 version, you can remove these conditional checks.

    Regards,
    Ivan Ivanov
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  9. Robert
    Robert avatar
    31 posts
    Member since:
    Apr 2011

    Posted 21 Aug 2014 in reply to Ivan Ivanov Link to this post

    I've tried a few variations on 'removing these conditional checks', but I seem to be guessing wrong.  I get various build errors each time. I'd report them but I think I must be doing something different than you intended anyway.

    Note that I'm building this project in Visual Studio, and selecting Release451 build configuration. I would have tried the batch build, but there wasn't a .Net 4.51 version of the batch files, and it seemed best to do it manually in VS in this case.

    I'll keep trying but any additional hints would be welcome.  Thanks.
  10. Answer
    Maya
    Admin
    Maya avatar
    4062 posts

    Posted 22 Aug 2014 Link to this post

    Hi Robert,

    All you need to do is to change the CustomBuild definition to be "true" rather than "false". It can be found in the .proj file "Telerik.Windows.Controls.EntityFramework_WPF.proj":
    <PropertyGroup>
       <CustomBuild Condition="'$(CustomBuild)' == ''">true</CustomBuild>
     
      
    <ProjectGuid>{8BA30A49-7898-401C-A768-3458232CE542}</ProjectGuid>
       <RootNamespace>Telerik.Windows.Controls.EntityFramework</RootNamespace>
       <AssemblyName>Telerik.Windows.Controls.EntityFramework</AssemblyName>
       <AssemblyName Condition="'$(CustomBuild)' == 'true'">Telerik.Windows.Controls.EntityFramework60</AssemblyName>
     
       
        .....
     </PropertyGroup>

    Once you set the condition to "True", the binary you get is "Telerik.Windows.Controls.EntityFramework60.dll".
    Let me know if you have any troubles with that or you need a small video illustrating the steps. 


    Regards,
    Maya
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  11. Robert
    Robert avatar
    31 posts
    Member since:
    Apr 2011

    Posted 22 Aug 2014 in reply to Maya Link to this post

    Thank you, that worked ! 

Back to Top
UI for WPF is Visual Studio 2017 Ready