Usando MEF con el proyecto de exportación que utiliza recursos (XML) contenida en el XAP

StackOverflow https://stackoverflow.com/questions/2404760

  •  18-09-2019
  •  | 
  •  

Pregunta

Me estoy haciendo una prueba de concepto en la aplicación SL4 usando MEF y como parte de la aplicación Estoy importando otra XAP de un proyecto Silverlight existente y mostrarlo en mi proyecto de acogida.

El problema es que la aplicación existente utiliza algunos archivos .xml (como contenido) y utiliza linq2xml para cargar estos archivos que están (que se supone) incluido en el XAP.

Cuando compongo la aplicación del initalization falla porque la aplicación host no contiene los archivos XML. Si copio estos archivos XML en el proyecto anfitrión y ejecuto la composición funciona bien. Sin embargo, tengo que mantener los archivos XML en el proyecto original.

¿Hay una manera que puedo descargar un XAP y ver su contenido para los archivos XML y luego cargarlos en el XAP anfitrión en tiempo de ejecución por lo que después de la Composición de toma colocar los recursos XML que se requieren se pueden encontrar?

O debería llegar a algún tipo de contrato con una importación / exportación para pasar los archivos XML para el XAP anfitrión?

A medida que las personas que desarrollan las xaps importados (si el proyecto sigue adelante) son de una empresa diferente, me gusta mantener los cambios en la manera en que desarrollan sus aplicaciones a un mínimo.

¿Fue útil?

Solución 2

Me las he arreglado para encontrar una solución que estoy bastante contento con él.

En lugar de construir los archivos .xml como 'contenido' para ir dentro del XAP, los he construido como 'recurso' entonces se utiliza Application.ResourceStream () y se carga el código XML utilizando una corriente.

El segundo medio de desarrolladores XAP tendrán que cambiar su forma de operar, pero es sólo una línea adicional de código y el cambio de la Acción de generación, estoy seguro de que pueden manejar.

Otros consejos

Asumo que está utilizando el DeploymentCatalog para descargar el segundo XAP? Por desgracia no hay forma de llegar a los recursos incluidos en dicho XAP. Usted podría tener los recursos incrustados en las asambleas que se incluyen en el XAP, y luego modificar la forma en que se cargan.

Si realmente no desea cambiar la forma en que el XAP se estructura secundaria, es posible que pueda escribir su propia DeploymentCatalog lo que también permitirá cargar los recursos de la XAP descargado. El código fuente para DeploymentCatalog está disponible, por lo que podría basar fuera de ello.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top