Pregunta

Intento escribir una aplicación metropolitana extensible usando MEF.Lo hice funcionar con una extensión local (dentro del ensamblaje actual).Ahora quiero cargar una dll externa.El DirectoryCatalog parece no estar presente en .net 4.5.Así que intenté usar ApplicationCatalog pero recibí el siguiente error al llamar SatisfyImportsOnce: Assembly.LoadFrom is not supported in AppX..

Aquí está mi código:

var catalog = new AssemblyCatalog(GetType().GetTypeInfo().Assembly);
ApplicationCatalog catApp = new ApplicationCatalog();
AggregateCatalog cat = new AggregateCatalog(catalog, catApp);
_compositionService = cat.CreateCompositionService();
_compositionService.SatisfyImportsOnce(this);

¿Alguna sugerencia de qué está yendo mal?

Coloqué el dll en el directorio Appx y ejecuté VS11 Beta como administrador.

¿Fue útil?

Solución 2

Hablé con un partidario en los foros de MEF y me confirma que ApplicationCatalog no se puede utilizar desde una aplicación metro.Por tanto, esta cuestión no tiene solución, pero podría resolverse.Hilo fuente

Otros consejos

Su biblioteca externa llega fuera del entorno limitado permitido de Metro.El marco .NET en el entorno Metro es limitado, similar al WP7 o Micro Framework.Hay muchas cosas recortadas.Si su DLL externa no está construida utilizando esas bibliotecas restringidas, entonces el compilador no permitirá su uso.

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