2011-04-05 15 views
8

Tengo una aplicación WPF con 3 proyectos para representar una arquitectura de 3 capas. Un proyecto se establece como el proyecto principal. Tengo algunos archivos XML en uno de los proyectos no principales. A estos archivos XML se accede mediante funciones definidas en las clases de ese proyecto.Incluyendo archivos xml al implementar la aplicación WPF

Cuando intento publicar la aplicación utilizando VS2010 ClickOnce, los archivos XML no se incluyen en el archivo de instalación incluso después de marcar los archivos 'Crear acción en el contenido y Copiar a directorio de salida como copiar siempre. Al ejecutar la aplicación instalada, la aplicación informa que los archivos no se encuentran. Puedo ver una carpeta Application_Files en la carpeta de instalación generada por ClickOnce, pero no contiene los archivos XML.

Entonces, mi pregunta es cómo puedo incluir los archivos XML en las carpetas de instalación y también obtener su URL de ubicación mientras ejecuto la aplicación.

Gracias, Naveen

Actualización 1: La estructura de solución de aplicación consta de tres proyectos, digamos P1, P2 y P3. P3 es el principal proyecto de inicio. P1 y P2 son proyectos de biblioteca de clase. Los archivos XML se agregan al proyecto P2. Los archivos están marcados como Acción de compilación -> Contenido y Copiar -> Copiar siempre. Sin embargo, estos archivos no se copian en la carpeta de datos de la aplicación mediante ClickOnce mientras se publica la aplicación.

Respuesta

1

no utiliza un ClickOnce 2 lugares:

  • una ubicación para el archivo ejecutable principal y
  • un lugar toda la DLL necesaria para todo lo que no es ejecutable, es decir, los recursos, como el XML

para que tenga un directorio de aplicaciones y un directorio de datos. Dirigirse al directorio de la aplicación todavía se puede hacer así AppDomain.CurrentDomain.BaseDirectory.

Pero si desea direccionar el directorio de datos, necesita algo específico para el clickonce: ApplicationDeployment.CurrentDeployment.DataDirectory.

No estoy seguro de si ha verificado ese directorio de datos, porque no lo ha mencionado en su publicación.

+1

Gracias. Intenté dar el direccionamiento dir de datos. Pero parece que el problema es que los propios archivos XML no se copian mientras se publica la aplicación. Si tengo los archivos XML en el proyecto principal, se copiarán en la carpeta creada por ClickOnce. Pero mis archivos XML no están en el proyecto principal; se agregan al proyecto no principal. Revisé la carpeta con el archivo de instalación pero no pude encontrar ninguno de mis archivos XML allí. – naveen

6

Solución simple. Haga clic derecho en el archivo de proyecto que desea publicar. Seleccionar propiedades. Luego seleccione publicar en la ventana abierta. Haga clic en el botón Aplicar archivos. Allí, encuentre el archivo yo.xml, que será de tipo 'Archivo de datos' por defecto. Cambiarlo a Incluir. Guardar Reconstruir y publicar, y eso es todo.

Espero que ayude a alguien que lo necesite.

Cuestiones relacionadas