DevartEntityDeploy on a build server

Discussion of open issues, suggestions and bugs regarding Entity Framework support in ADO.NET Data providers
Post Reply
nicolas
Posts: 1
Joined: Fri 13 Jul 2012 09:56

DevartEntityDeploy on a build server

Post by nicolas » Fri 13 Jul 2012 10:09

Hello,

i am using msbuild command line to compile my model assembly containing an MyModel.edml file. Properties are set to DevartEntityDeploy, Do not copy, DevartEfGenerator. On my local Windows 7 Machine everything works fine, the resulting assembly contains the .csdl, .msl and .ssdl files as i found out using reflector.

However, when i run the same msbuild command on my windows server 2008 r2 machine, which hosts a teamcity build server, the resulting assembly does not contain the embedded files. The msbuild output does not contain any errors. I appreciate any help!

Nicolas

Shalex
Site Admin
Posts: 8245
Joined: Thu 14 Aug 2008 12:44

Re: DevartEntityDeploy on a build server

Post by Shalex » Wed 18 Jul 2012 16:10

Have you installed Entity Developer (or Professional Edition of dotConnect provider which includes Entity Developer) on your build server?

IBIphilip
Posts: 3
Joined: Wed 12 Feb 2014 12:36

Re: DevartEntityDeploy on a build server

Post by IBIphilip » Wed 12 Feb 2014 13:11

We have the same problem. Entity Developer is installed and the Program Files/MSBuild folder is populated with Devart/v3.5/...

After building the Solution we get a MetadataException at System.Data.Entity.Core.Metadata.Edm.MetadataArtifactLoaderCompositeResource.LoadResources(String assemblyName, String resourceName, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver resolver)

Any solution on this?

How does MSBuild know how to handle

Code: Select all

    <DevartEntityDeploy Include="Model\Model.edml">
      <Generator>DevartEfGenerator</Generator>
      <LastGenOutput>Model.info</LastGenOutput>
    </DevartEntityDeploy>
Cheers
Philip

IBIphilip
Posts: 3
Joined: Wed 12 Feb 2014 12:36

Re: DevartEntityDeploy on a build server

Post by IBIphilip » Wed 12 Feb 2014 14:27

Seems the reason for this issue was the missing folder v12.0 and the file C:\Program Files (x86)\MSBuild\v12.0\Custom.After.Microsoft.Common.targets which contains the import of the Devart-Targets.

Which process is responsible for creating these lines?

MariiaI
Devart Team
Posts: 1472
Joined: Mon 13 Feb 2012 08:17

Re: DevartEntityDeploy on a build server

Post by MariiaI » Fri 14 Feb 2014 09:09

Probably, you have installed Entity Developer without Visual Studio 2013 integration.
C:\Program Files (x86)\MSBuild\v12.0\Custom.After.Microsoft.Common.targets
This file is populated with the data only in case of the corresponding Visual Studio integration.
You can modify this file manually:

Code: Select all

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\Devart\v3.5\Devart.Data.Entity.targets" Condition="'$(ImportDevartEntityDeploy)'!='false' and Exists('$(MSBuildExtensionsPath)\Devart\v3.5\Devart.Data.Entity.targets')" />
</Project>
Please tell us if this helps.

IBIphilip
Posts: 3
Joined: Wed 12 Feb 2014 12:36

Re: DevartEntityDeploy on a build server

Post by IBIphilip » Mon 17 Feb 2014 11:08

I have copied the lines from an dev machine. Iam not sure if there was VS 2013 Express already installed on the system, so this maybe was the problem.

Post Reply