2011-08-23 22 views
5

trabajo con EF 4 (no con Entidades de seguimiento actualmente). He agregado algunas columnas (ninguna de ellas es una clave y todas son anulables) a una de mis entidades, y obtuve la excepción Number of members in conceptual type does not match with number of members on object side type.
He seguido la respuesta aceptada here pero todo lo que tengo de eso fue que esta entidad no aparece en mi edmx más. Lo he vuelto a agregar desde DB, pero sigo obteniendo la misma excepción.
Creo que el problema es que he copiado los archivos CSDL/ssdl/MSL a mi directorio de montaje de ejecución. Me gustaría copiar los archivos actualizados, pero no es creado de nuevo (una vez que se han creado en la carpeta obj\Debug\edmxResourcesToEmbed de mi proyecto EF), ni siquiera después de la eliminación de ellos.
¿Alguna forma de volver a crear esos archivos?
Gracias.marco Entidad - crear el CSDL, ssdl y archivos msl

P.S: Como no quiero publicar cantidades excesivas de código, no agrego nada todavía pero estaré encantado de agregar la información necesaria, solo que no estoy seguro de qué es exactamente lo que se necesita.

+0

hice lo mismo que [Noich] (https://stackoverflow.com/users/427653/noich), pero en lugar de seleccionar 'incrustar en la salida Assembly' he seleccionado' Copia A la salida Directory' y funcionó para mí –

Respuesta

15

Así que si usted desea crear el CSDL, ssdl amd archivos MSL, haga lo siguiente:

  1. Ir al archivo de edmx.
  2. Haga clic en la pantalla de GUI que muestra el modelo.
  3. Cambiar a la ventana de propiedades (no sabía que se debe acceder desde la zona de interfaz gráfica de usuario, y no haciendo clic derecho en el archivo en el Explorador de soluciones.
  4. En el Metadata Artifact Process seleccione Embed in Output Assembly.

Hecho y hecho, los archivos aparecerán en Debug\edmxResourcesToEmbed bajo obj o obj\x86, según sus definiciones de compilación.
Lo siento si esto parece ser fácil de explicar, pero necesitaba esas instrucciones (msdn no era un gran ayuda) y espero que pueda ayudar a otros.

+0

Se es una buena respuesta, así que te daré una votación y está disponible en msdn o no? – urveshpatel50

+0

No estoy seguro de que esté en MSDN. Fue hace un tiempo, pero creo que fue otro desarrollador en el trabajo que me ayudó con eso. – Noich

+1

Esto también funciona si tiene problemas con los archivos CSDL, MSL y SSDL que no se publican en el directorio bin mediante VS Publish. :) –

Cuestiones relacionadas