2010-07-31 12 views
100

Creo que hay dos versiones 1 y 2? Y la versión 2 se conoce como Entity Framework 4.0?¿Determinar la versión de Entity Framework que estoy usando?

¿Cómo puedo saber qué versión se está utilizando en una aplicación?

Esto está en mi web.config ¿significa esto que estoy usando la versión 2?

<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 

Respuesta

73

hay dos versiones: 1 y 4. EFv4 es parte de .NET 4.0, y EFv1 es parte de .NET 3.5 SP1.

Sí, la configuración de configuración anterior apunta a EFv4/.net 4.0.

EDITAR Si abre la carpeta de referencias y localizar system.data.entity, haga clic en el tema, a continuación, comprobar el número de versión de tiempo de ejecución en el explorador de propiedades, verá la versión sub también. Mine, por ejemplo, muestra la versión de tiempo de ejecución v4.0.30319 con la propiedad de versión que muestra 4.0.0.0. El EntityFramework.dll también se puede ver de esta manera. Solo la versión será 4.1.0.0 y la versión en tiempo de ejecución será v4.0.30319, que especifica que es un componente .NET 4. De forma alternativa, puede abrir la ubicación del archivo como se indica en la propiedad Ruta y hacer clic con el botón derecho en el componente en cuestión, seleccionar propiedades, luego elegir la pestaña de detalles y ver la versión del producto.

+2

Sí, pero hay diferentes versiones de 4.0. – MikeKulls

+0

Consulte mi respuesta a continuación para conocer el historial de versiones de Microsoft. – Marcel

+0

Ahora hay tres versiones y EFV5 está asociado con .NET 4.5 y, a partir de ahora, EFv6 está en construcción – Farax

11

Si abre la carpeta de referencias y localiza system.data.entity, haga clic en el elemento, luego verifique el número de versión de tiempo de ejecución en el Explorador de propiedades, también verá la subversión. Mine, por ejemplo, muestra v4.0.30319 con la propiedad de versión que muestra 4.0.0.0.

123

Otra forma de obtener la versión EF que está utilizando es abrir la consola del Administrador de paquetes (PMC) en Visual Studio y escribir Get-Package en el indicador. La primera línea es para EntityFramework y lista la versión que el proyecto ha instalado.

PM> Get-Package 

Id        Version    Description/Release Notes                                               
--        -------    -------------------------                                               
EntityFramework    5.0.0    Entity Framework is Microsoft's recommended data access technology for new applications.                               
jQuery       1.7.1.1    jQuery is a new kind of JavaScript Library....           `enter code here`

Se muestra mucho más y puede que tenga que desplazarse hacia atrás hasta encontrar la línea EF, pero esta es la manera más fácil que conozco para averiguarlo.

+12

Bueno, esto supone que instaló la referencia a través del administrador de paquetes, que no es el caso para muchos de nosotros. –

+0

La mejor respuesta, funciona como un amuleto y también funciona para otras cosas: D – Squazz

+0

@LaurentJalbertSimard No lo hice explícitamente, y todavía aparece. – Dan

32

puede verificarlo en el archivo packages.config.

<?xml version="1.0" encoding="utf-8"?> 
<packages> 
<package id="EntityFramework" version="6.0.2" targetFramework="net40-Client" /> 
</packages> 
1

Si va a referencias, haga clic en Entity Framework, ver propiedades Le dirá el número de versión.

0
internal static string GetEntityFrameworkVersion() 
    { 
     var version = ""; 
     var assemblies = System.AppDomain.CurrentDomain.GetAssemblies().Select(x => x.FullName).ToList(); 
     foreach(var asm in assemblies) 
     { 
      var fragments = asm.Split(new char[] { ',', '{', '}' }, StringSplitOptions.RemoveEmptyEntries).Select(x=> x.Trim()).ToList(); 
      if(string.Compare(fragments[0], EntityFramework, true)==0) 
      { 
       var subfragments = fragments[1].Split(new char[] { '='}, StringSplitOptions.RemoveEmptyEntries); 
       version =subfragments[1]; 
       break; 
      } 
     } 
     return version; 
    } 
Cuestiones relacionadas