test recuperar pueden puede pudo para not mvc metadatos los información found especificados entitytype encuentra encontró encontro encontrar cs0006 could cargar asignaciones archivos archivo c# asp.net-mvc-3 entity-framework edmx devart

c# - recuperar - no se pueden cargar los metadatos



System.Data.MetadataException: no se puede cargar el recurso de metadatos especificado (7)

Mis cadenas de conexión son las siguientes:

<add name="RollCallDBEntities" connectionString="metadata=res://System.Engine/RollcallNS.csdl|res://System.Engine/RollcallNS.ssdl|res://System.Engine/RollcallNS.msl;provider=Devart.Data.Oracle;provider connection string=&quot;User Id=user;Password=password;Server=127.0.0.1;Direct=True;Sid=ORCL&quot;" providerName="System.Data.EntityClient" />

Mi código es el siguiente:

using (var db= new RollCallDBEntities()) //ok { var query = db.TBL_ROLLCALL.ToList(); //Unable to load the specified metadata resource. }

mi asamblea:

System.Engine

¿Alguien tiene alguna idea?

estos enlaces no resolvieron mi problema:
MetadataException: no se puede cargar el recurso de metadatos especificado
Entorno de la entidad No se puede cargar el recurso de metadatos especificado
Entity Framework: no se puede cargar el recurso de metadatos especificado
No se puede cargar el recurso de metadatos especificado


Consulte http://forums.devart.com/viewtopic.php?t=22092 .

Si esto no ayuda, por favor especifique:

  • ¿está trabajando con ADO.NET Entity Data Model (.edmx) o Devart Entity Model (.edml)?
  • el valor de la propiedad Build Action de su archivo modelo
  • el valor de la propiedad Procesamiento de artefactos de metadatos de su modelo
  • el número de compilación (x.xx.xxx) de su dotConnect para Oracle
  • La versión de tu Visual Studio.
  • siga los consejos de Pawel para verificar si los recursos se incrustaron en el ensamblaje

Estaba recibiendo una excepción como esta. El problema fue que .edmx nombre de mi archivo .edmx y olvidé cambiar el nombre en la cadena de conexión del archivo EF Web.config :

metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;


He tenido un producto similar con devart mysqlconnect, tal vez esto pueda ayudar.

Tengo un proyecto llamado EFModels que contiene el archivo .edml y es referenciado por otros proyectos.

Me di cuenta de que la versión de lanzamiento de un proyecto que hacía referencia a EFModels contiene EFModels.dll pero tenía un tamaño mucho menor (127kb frente a 437kb) que la versión de depuración de EfModels.dll. Trasladar EFModels.dll de la versión de depuración a la versión Release, resolví el problema por mí, ya que, por algún motivo, la versión Release no incluía el ssdl, etc.


La solución más fácil que resolvió esto para mí fue eliminar la carpeta obj que se encuentra al mismo nivel que la carpeta bin y volver a ejecutar la aplicación , Dios mío, tardó más de lo necesario.


Si no está seguro de cuál es la ruta correcta para sus archivos de metadatos, puede averiguarlo compilando su aplicación, luego abriendo la DLL utilizando el dotPeek de JetBrains y buscando en la carpeta Recursos para encontrar el archivo .csdl, etc.


También encontré este problema y fue porque olvidé hacer referencia al proyecto que contenía el archivo EDMX.


Utilicé EntityFramework 6.0 en una solución que incluía múltiples proyectos, como el proyecto a nivel de sitio web, el proyecto a nivel de acceso a datos. En mi solución, las migraciones deben realizarse en el proyecto de nivel de acceso a datos.

Cuando ejecuto el comando Agregar migración en la Consola del Administrador de paquetes, se muestra el mensaje "No se puede cargar el recurso de metadatos especificado".

Finalmente, encontré que configuré el proyecto de nivel WebSite como proyecto de "Inicio" y este desencadenante por encima de la excepción. Parece que el sistema verificará automáticamente la configuración de la cadena de conexión en el proyecto StartUp. Y mi cadena de conexión de datos establecida en el proyecto de nivel WebSite es

"metadata = res: // /ApplicationEntities.csdl|res:// /ApplicationEntities.ssdl|res://*/ApplicationEntities.msl;provider=System.Data.SqlClient;provider connection string =" fuente de datos = .; inicial catalog = YourDatabaseName; security integrado = True; MultipleActiveResultSets = True; App = EntityFramework ""

lo cual no es correcto para el código primero.

La cadena de conexión correcta debe ser:

"Origen de datos = .; Catálogo inicial = Nombre de la base de datos; Seguridad integrada = Verdadero"

Conclusión, siempre revise la sección "connectionStrings" en web.config en el proyecto "StartUp" de la solución primero.