Obtenir un type Assembly dans Windows 8

J’essaie d’utiliser MEF sous Windows 8.

Afin de construire mon AssemblyCatalog pour le conteneur, il me faut une référence à l’assemblage. Dans le passé, j’aurais juste fait ceci:

 var catalog = new AssemblyCatalog(typeof(App).Assembly); 

Mystérieusement, la propriété Assembly n’existe plus sur l’object Type . Quelqu’un sait-il un bon travail autour? Y a-t-il un autre moyen d’obtenir l’assemblée? Je pourrais le charger en utilisant Assembly.Load , mais j’aurais besoin du nom de l’assembly. Je ne peux pas obtenir cela du type non plus.

Est-ce que l’utilisation d’un DirectoryCatalog une alternative possible? Je n’aime pas l’idée, mais je ferai ce dont j’ai besoin.

 using System.Reflection; 

Utilisez type.GetTypeInfo().Assembly place.

Vous avez trouvé la réponse après quelques recherches dans la documentation sur la création d’applications de style métropolitain.

http://msdn.microsoft.com/en-us/library/windows/apps/br230302%28v=VS.85%29.aspx#reflection

Les aspects de reflection de la classe Type ont été déplacés vers un nouvel object appelé System.Reflection.TypeInfo . Vous pouvez obtenir une instance de cette classe en appelant type.GetTypeInfo() .

Donc, pour obtenir l’ typeof(App).GetTypeInfo().Assembly : typeof(App).GetTypeInfo().Assembly .

Nécessite l’ using System.Reflection;