I just downloaded entity framework 6 and created a brand new project to test it. We currently use EF 5.
After adding all my tables and stored procedures, I tried to build the project but I get errors:
Value of type 'System.Data.Objects.ObjectParameter' cannot be converted to 'System.Data.Entity.Core.Objects.ObjectParameter'.
Value of type 'System.Data.Entity.Core.Objects.ObjectResult(Of DataLibrary.MyStoredProc_Result)' cannot be converted to 'System.Data.Objects.ObjectResult(Of DataLibrary.MyStoredProc_Result)'.
I cannot figure out why this will not work out-of-the-box
EF 5 had so such issues.
I am using VS 2012. .Net 4.5 Vb.net (also tried with a C# project... same issue)
The answer was to install EF6 Tools for VS 2012. I did not know I had to do this since I thought that was installed when I added the Entity Framework package.
I guess you are using EF tools from VS2012 which are still bound to original EF distribution (part of .NET framework). EF6 uses out-of-band distribution and it doesn't work with previous tooling - that is the reason why those types has little bit different namespaces and cannot be converted from one to another.
Solution should be downloading and installing EF6 tools for VS2012 or using VS2013 where tools should be included.
You can overcome this scenario by replacing:
You may need to update the
using statements in your T4 templates, like your Context.tt file, so that auto-generated files continue to work when re-generating.