I'm trying to use MEF in Windows 8.
In order to build up my AssemblyCatalog
for the container, I need a reference to the assembly. In the past, I would have just done this:
var catalog = new AssemblyCatalog(typeof(App).Assembly);
Mysteriously, the Assembly
property no longer exists on the Type
object. Anybody know of a good work around? Is there another way to get the assembly? I could load it using Assembly.Load
, but I would need the name of the assembly. I can't get that from the type either.
Is using a DirectoryCatalog
a possible alternate? I don't like the idea, but I'll do what I need to.
using System.Reflection;
Use type.GetTypeInfo().Assembly
instead.
Found the answer after some digging through the loads of documentation on building metro style apps.
http://msdn.microsoft.com/en-us/library/windows/apps/br230302%28v=VS.85%29.aspx#reflection
The reflection aspects of the Type
class have been moved to a new object called System.Reflection.TypeInfo
. You can get an instance of this class by calling type.GetTypeInfo()
.
So to get the Assembly: typeof(App).GetTypeInfo().Assembly
.
Requires using System.Reflection;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With