Which version of Entity Framework is used by my project?

24,561

Solution 1

According to this answer to Entity Framework 5 not installing correctly?, one should only look at EntityFramework.dll, which in my case shows Runtime version v4.0.30319 but Version 5.0.0.0. (So I do have EF 5.)

Solution 2

Maybe your proyect is based in .NET 4.0, in this case you have an EF5 version without .NET 4.5 features:

EntityFramework 5 use dll version 4.4.0.instead 5.0

Solution 3

Go to packages.config file of your project.

  <package id="EntityFramework" version="6.1.3" targetFramework="net45" />
Share:
24,561
Yahoo Serious
Author by

Yahoo Serious

Picture as tribute to Faith No More, they rock! Original picture by Alan D. Wilson, modified by Balthazar, all rights on Wikipedia.

Updated on June 01, 2020

Comments

  • Yahoo Serious
    Yahoo Serious almost 4 years

    I have a project using Entity Framework, but I am not sure which version of EF I am using. According to the Microsoft version history EF5 will install itself:

    If you create a new model using the Entity Framework Designer in Visual Studio 2012, the EF5 NuGet package will be installed to your project and the generated code will make use of EF5.

    However I did not create the EF-part of the project, but got it from version control (TFS). Now I am not sure how to determine if I have EF5.

    If I right-click on the References folder of the project and select Manage NuGet Packages, it show EF5 with an Uninstall-button, implying I have EF5.

    But the system.data.entity in the References folder has a Runtime Version v4.0.30319 and Version 4.0.0.0 in the Properties explorer, which would imply EF 4 (according to Determine version of Entity Framework I am using?).

    I do have this in my app.config:

    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    

    And this in my web.config:

    <configSections>
      <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    </configSections>
    <!--...-->
      <dependentAssembly>
        <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
      </dependentAssembly>
    <!--...-->
      <entityFramework>
        <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
      </entityFramework>
    

    Can anybody clarify this?