seleccionado referencia recurso recuperar reciente pueden puede proyecto para mvc metadatos mas informaciĆ³n hace generador framework especificado error entitytype encuentra ejecutar data codigo cierra cargar asistente asignaciones c# asp.net .net asp.net-mvc visual-studio

c# - referencia - no se pueden recuperar metadatos para mvc



Agregar error de controlador no se puede recuperar los metadatos (7)

Quiero agregar un controlador en mi aplicación MVC 4 en VS2012 como esta imagen:

Modelo:

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data.Entity; namespace MvcDemo.Models { public class MovieDB { public int ID { get; set; } public string Title { get; set; } public string Director { get; set; } public DateTime Date { get; set; } } public class MovieDBContext : DbContext { public DbSet<MovieDB> Movies { get; set; } } }

Cadenas de conexión:

<connectionStrings> <add name="DefaultConnection" connectionString="Data Source=(LocalDb)/v11.0;Initial Catalog=aspnet-MvcDemo-20130315191956;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|/aspnet-MvcDemo-20130315191956.mdf" providerName="System.Data.SqlClient" /> <add name="MovieDBContext" connectionString="Data Source=|DataDirectory|/Movies.sdf" providerName="System.Data.SqlServerCe.4.0"/> </connectionStrings>

Después de hacer clic en "agregar", se produce este error:

unable to retrieve metadata for ''MvcDDemo.Models.MovieDB''.Using the same DbCompiledModel to create contexts against different type of database servers is not supported.instead,create a separate DbCompiledModel for each type of server being used.

¿Cualquier sugerencia?


¡No se olvide de limpiar y reconstruir antes de intentar un andamio! Ese fue mi error.


Cambie providerName="System.Data.SqlServerCe.4.0 por providerName="System.Data.SqlClient para corregir este error.


En Web.config , establezca el segundo nombre de providerName igual que el primer nombre de providerName , y después de crear el controlador, ¡deshágalo!

de: here


En web.config , elimine la línea AttachDBFilename=|DataDirectory|****.mdf .


Mi publicación puede ayudar en caso de que alguien tenga el mismo problema.

Intenté experimentar con EF6 y EF5 en el mismo proyecto, y noté que la etiqueta <entityFramework> estaba en mal estado y tenía el mismo problema arriba.

Aquí está lo que hice, y resolvió el problema:

  1. Quité la etiqueta <entityFramework> de Web.config
  2. Marco de la entidad desinstalada de mi aplicación MVC usando nuget
  3. Instalar el marco de la entidad a mi aplicación MVC de nuevo

Después de quitar la etiqueta <entityFramework> y volver a instalar EF5, se solucionó el problema y puedo volver a colocar los controladores de nuevo.


Tuve el mismo problema y debajo está el cambio que solucionó el problema para mí. Tuvo que cambiar localhost a. Y agregado inicial de catálogo = películas.

antes de

<add name="MovieDBContext" connectionString="Data Source= localhost/SQLEXPRESS;AttachDbFilename=|DataDirectory|/MoviesDB.mdf;Integrated Security=True" providerName="System.Data.SqlClient"/>

Despues

<add name="MovieDBContext" connectionString="Data Source= ./SQLEXPRESS;Initial Catalog=Movies; AttachDbFilename=|DataDirectory|/MoviesDB.mdf;Integrated Security=True" providerName="System.Data.SqlClient"/>

Referencia:

ASP .Net MVC 4, valor no válido para la clave ''attachdbfilename''


Usuario siguiendo por providerName = "System.Data.SqlServerCe.4.0"

<add name="MovieDBContext" connectionString="Data Source=|DataDirectory|/Movies.sdf" providerName="System.Data.SqlServerCe.4.0" />