2012-06-08 24 views
18

Así que estoy descargando un proyecto en el hogar desde el trabajo sobre el servidor de la fundación del equipo. Descargo el proyecto y no se compilará debido al error. Advertencia 2 El componente referenciado 'EntityFramework' no se pudo encontrar. ¿Podría alguien ofrecer una guía sobre cómo puedo lograr que el marco de la entidad funcione? Instalé el paquete Nuget.El componente al que se hace referencia 'EntityFramework' no se pudo encontrar.

Gracias

+0

¿En todos los proyectos que usan los objetos de datos? –

+0

¿Qué quieres decir? Todos los elementos que usan la base de datos me dan errores de compilación. ¿algo tiene que ser cambiado? – qwertyuywertwer

+0

¿Ha restaurado los paquetes con Nuget? Por lo general, no se almacenan en el control de fuente. ¿Se ha asegurado de que todos los proyectos en su solución que hacen referencia a su objeto de datos tengan una referencia activa al Entity Framework? Estos son los problemas comunes con este tipo de error. –

Respuesta

30

sugiero que compruebe:

1) "Permitir NuGet para descargar los paquetes que faltan durante la construcción" cumplía

Tool --> Options... --> Package Manager --> General enter image description here

2) "Proyecto seleccionado " marcado

Solution Explorer --> right-click on the solution/project --> Manage NuPackages enter image description here

3) Volver a generar solución

enter image description here

EDITAR

Para completar Me gustaría añadir que si se está trabajando con un sistema de CI (por ejemplo, Jenkins) o si está utilizando MSBuild en la línea de comandos, es necesario seleccionar Habilitar NuGet paquete Restaurar para hacer que funcione:

Enable NuGet Package Restore http://docs.nuget.org/docs/Workflows/images/enable-package-restore.png

+0

Desafortunadamente, hay muchos casos en los que "Permitir que NuGet descargue paquetes faltantes" está habilitado, pero NuGet aún no descarga y restaura las referencias. Estoy usando la actualización 3 de Visual Studio 2015. La experiencia del usuario con NuGet dista mucho de ser perfecta. – Dai

+0

@Dai: a veces, es necesario eliminar el contenido de la carpeta _packages_. Si lo hace, la restauración del paquete siempre funciona sin falta. –

17

que tenían el mismo problema. Lo resuelto de esta manera:

  1. Elija References> Haga clic derecho>Add Reference ...
  2. Elija Browse pestaña
  3. Encuentra su carpeta de proyecto >packages>EntityFramework.4.1.10331.0>lib
  4. Elija EntityFramework.dll
  5. clic OK
+0

Esto funcionó para mí, a diferencia de nuget package restore – user1534664

+0

Obviamente los detalles ahora son diferentes (EntityFramework ha tenido bastantes revisiones desde esta respuesta), pero esta era la mejor solución cuando NuGet ya tenía el paquete instalado pero el proyecto tenía la ruta incorrecta para el dll. – Ellesedil

+0

Esta fue una respuesta útil. Recientemente actualicé la versión de un paquete usando NuGet pero la referencia en el archivo csproj no se actualizó a la DLL más reciente. – DaveInCaz

1

Hay buenas maneras sugeridas por los desarrolladores, también puede probar esta solución para resolver su problema.

En su caso, su proyecto tiene una referencia a la biblioteca EntityFramework, pero la biblioteca en sí no está disponible para su proyecto. Usted puede tratar ya sea el siguiente:

  • Si tiene NuGet gestor de paquetes:

Haga clic en Proyecto-> Administrar paquetes NuGet. Se abrirá en la siguiente ventana.

Encuentra EntityFramework y haz clic en Instalar.

NuGet Package Window


- También puede descargar la biblioteca de ADO.NET Entity Framework en el equipo, a continuación,

Haga clic con el Prject-> Agregar referencias ...-> Browse-> Localizar su biblioteca EntityFramework-> haga clic en Aceptar

Like this image


- Opcionalmente se puede usar gestor de paquetes para instalar referencia de la biblioteca,
verificación de este enlace package-manager-console (Nota: Esto puede requerir NuGet administrador de paquetes)

1

He resuelto este problema mediante la adición de referencia de Entity Framework (Añadir ref) bajo C: \ Prog Files \ Entity ... \ Binaries \ Entity Framework.dll en mi proyecto. ¡Espero que esto ayude!

Cuestiones relacionadas