Ramu
Ramu

Reputation: 353

IBM Data Server EF 6 Provider for Entity Framework 6 - Limitations - Possible Workarounds

I have downloaded EntityFramework 6 and EntityFramework.IBM.DB2 (6.0.1) available on nuget.org and also installed IBM add-in for visual studio 2015.

During EDMX creation i'm getting the below error (which is already specified in the readme.txt file after EntityFramework.IBM.DB2 is installed)

Limitations:

  1. A known issue with MS EF Tooling, if an application targets the x64 platform using our 'IBM Data Server EF 6 Provider' during EDM creation, It will see "Your project references the latest version of Entity Framework; however, an Entity Framework database provider compatible with this version could not be found for your data connection. If you have already installed a compatible provider, ensure you have rebuilt your project before performing this action. Otherwise, exit this wizard, install a compatible provider, and rebuild your project before performing this action" exception.

Possible Workarounds:

i) Move the EF model into its own project that compiles as Any CPU, then add that project as a dependency of the x64 (64-bit) StartUp project.

ii) Target the application to Any CPU platform.

I have tried to play around with the workarounds, but couldn't fully understand how to proceed with them.

Can any explain the work around in detail. I know its seems very silly asking to explain how to perform them. I know they are simple to do, as its already said what needs to be done. Just want to know how of it. Sorry for asking such a silly question.

Thank you.

Edit 1: I have created a new project. Installed EF 6.1.3 & EntityFramework.IBM.DB2 6.0.4. Built solution. Targeted Build in configuration manager to "Any CPU". However still managed to find the same issue enter image description here

Upvotes: 1

Views: 900

Answers (1)

Borophyll
Borophyll

Reputation: 1119

You only need the project to be targeting Any CPU when creating the EDMX. After you successfully create the EDMX, you can change your project back to x64.

If you aren't sure what "targeting" a specific platform means, it is simply controlled in configuration manager, and can be controlled with the drop-down menu at the top of Visual Studio.

platform-target-dropdown

Before creating your EDMX in your project, switch to Any CPU and rebuild the project first. After you have successfully created the EDMX, you are free to switch back to targeting x64 without issue.

Upvotes: 0

Related Questions