TLDR:
For EF7 Beta 4 (via nuget) the package you want is Remotion.Linq 2.0.0-alpha-002.
I recently updated some demos from using the EF7 stable (stable comes from Nuget.org, not the nightly build package source) version beta3 to beta4. It involved updating a lot of other packages and I know enough to be dangerous so this took me a while.
But I got it worked out and everything compiled and everything ran correctly …or so I thought.
There was a test I missed running which performed some LINQ queries.
I tried to demo that at in a conference session earlier this week at Techorama and it threw an exception. Rather than struggling with it, I assured the attendees that I knew this worked and was probably a versioning issue. I finally got a chance to dig into that today and have solved the problem.
It was indeed a version issue. I found a GitHub issue that indicated this problem was caused by having the wrong version of Remotion.Linq installed. But the conversation was based on an earlier build of EF7 and wasn’t sure which version of Remotion.Linq.
But in fixing the problem, I targeted the wrong version for an update, thinking the “stable” build might be what I wanted since the EF7 betas in nuget are considered “stable” betas. Unfortunately trying to install that stable version (1.15.15) caused nuget to hang for so long I had to just crash visual studio. I tried this repeatedly from different angles so I wasted over an hour being a dummy.
When I finally decided to try the 2.0.0-alpha-002 installed, it updated quickly and easily and my LINQ queries executed successfully.
Sign up for my newsletter so you don't miss my conference & Pluralsight course announcements!
Which brings up a great point about the whole approach of this whole .net release that is starting to concern me. I have been a fan of the nuget approach for dependencies in previous versions of visual studio but are we taking it too far?
Does the new version have the potential to become too fragmented because we don’t have a core technology with enhancements, but have a bunch of constantly changing mini-components. How is this going to effect the stability of the applications that we build?
The strength of the .net stack has been that it had just a few core technologies that you can build on. This helped to keep everyone on a similar page.
The geek developer in me is loving all the new toys to play with but the business developer is starting to worry.