entity-framework - tutorial - mostrar datos de una tabla en mvc
Cómo eliminar y volver a agregar adecuadamente el modelo de datos de la entidad (7)
novato a Entity Framework aquí. Utilizando VS 2010 y SQL Server 2008 Express DB.
Estaba teniendo problemas para actualizar un modelo de datos de entidad después de agregar nuevas tablas. Entonces, seguí una sugerencia que encontré aquí para simplemente eliminar y regenerar el modelo.
Llego a la sección "Elija su conexión de datos" del Asistente del modelo de datos de entidad y "Guardar configuración de conexión de entidad en Web.config como:" está marcado. Sin embargo, mi nombre actual tiene un 1 añadido. Por ejemplo, MyDatabaseEntities ahora es MyDatabaseEntities1. Por supuesto, no quiero que se agregue el "1". Maté la cadena de conexión existente en Web.config y eliminé todas las referencias a ese nombre en mi solución. Sin embargo, cuando intento continuar, se me presenta el siguiente error:
"''MyDatabaseEntites'' está en conflicto con un nombre de propiedad existente en la configuración de la aplicación. Por favor, elija un nombre diferente"
No puedo encontrar una referencia a ese nombre en ninguna parte de la solución. Puedo desmarcar esa opción y continuará, pero TODAVÍA no agregará dos de las tablas en la base de datos. A continuación, cerré completamente todo, reinicié e intenté de nuevo. Esta vez no recibí el error anterior, pero dos de mis tres nuevas tablas aún no se agregan al modelo edmx.
Cualquier idea es apreciada. También parece que todavía tiene muchos errores, incluso en VS2010 / .NET 4. Ayuda a restaurar mi fe ... Tengo ganas de abandonar Entity Framework en este momento. Según mi experiencia hasta ahora y algunos de los otros problemas publicados aquí, siento que voy a pasar más tiempo persiguiendo la extrañeza de Entity Framework que escribir código útil.
ACTUALIZACIÓN: He encontrado una resolución. El diseñador no muestra errores. Tienes que buscar en el XML nativo (archivo edmx) para ver los errores. Vea aquí: Entity Framework de ADO.NET: el Asistente de actualización no agregará tablas
- Reinicie
IIS
si desarrolla una aplicación web. - Reinicie Visual Studio después de eliminar la línea de cadena de conexión
EntityDataModel
de web.config o app.config - Agregar nuevo
Data Model
entidad y cambiarle el nombre como nombre antiguo,
El error se debe a cadenas de conexión sobrantes en la configuración del archivo "App.Config" (ver explorador de soluciones) y se encuentra en esta sección: "ConnectionStrings" (rodeado de corchetes angulares)
Solo bórralo desde allí.
En realidad, esto es frustrante, ya que intenta ver en app.config que si hay otra cadena y solo ve 1 cadena, en realidad, lo que hace VS a veces agrega una segunda cadena en la misma línea. ver esta imagen a continuación
¿Parece que hay 2 ConnectionStrings? (ACTUALMENTE, SI)
También puede presionar Ctrl + ED para formatear el archivo de configuración y ver si hay otra segunda cadena oculta en algún lugar. Espero que esto ayude a alguien.
Lo siento mucho por mi inglés, pero la solución es simple. tienes que eliminar ado.net y luego ir a app.conf y eliminar la cadena de conexión <>, DEBUGAR tu proyecto y finalmente agregar la nueva base de datos ado.net
TO ADD ADO.NET
RIGHT CLICK ON YOUR PROJECT NAME, THEN, ADD NEW ITEM, DATA AND SEARCH ADO.NET...
I hope help you, have good day!
angelsantacruzm
No conozco la respuesta específica a su problema, pero creo que puedo recomendar un enfoque que solucione este conflicto.
Generalmente rompo mi trabajo de EF en una biblioteca separada. Si estoy trabajando en Cyberdyne.Terminator, hago una biblioteca de clase EF llamada Cyberdyne.Terminator.Data. De esa manera, si desea volar el modelo y comenzar de nuevo, todo está separado de sus archivos dependientes, y en particular, su web.config.
Es probable que nada de esto arregle las tablas que faltan, probablemente. Lo único que he visto donde ocurre esto es si agrego una tabla y luego la elimino. No volverá a aparecer en el cuadro de diálogo "Agregar tablas" (y debe cambiarle el nombre para que se muestre). Pero pensé que eso estaba arreglado en EF 4.0. No sé. Si el problema persiste, puede intentar cambiar el nombre de la tabla, volver a agregarla y, a continuación, cambiar su nombre si aparece.
EF es un dolor en el culo para estar seguro. Lo único que puedo decirles es que, en general, tuve que lidiar con estos dolores de cabeza, aprender el problema y nunca más volverme a molestar. Si no puedes soportar EF, también deberías fijarte en NHibernate. También tengo una muy buena impresión de eso.
Solo presiona
Ctrl + F
y en la lista desplegable, seleccione ''EntireSolution / CurrentProject'', luego presione enter. donde quiera que este nombre genere te lo mostrará. Me meto en el archivo web.config . así que borra esa línea de conexión completa generada desde allí. y re agregarlo de nuevo. Entonces espero que no vuelvas a recibir este mensaje. Gracias.
Verifique sus cadenas de conexión y continúe desplazándose hacia la derecha. La mayoría de las veces, cuando esto me sucede, Visual Studio ha agregado una cadena de conexión detrás de otra. Hice esto un par de veces y me pregunté dónde estaba mi configuración de la aplicación (no, no hay una configuración de la aplicación, solo la configuración web en mvc), por lo que el diálogo es un poco confuso. Por supuesto, lo más probable es que la cadena de conexión esté al acecho directamente detrás de otra.