Jak przetestować właściwość typu, aby zobaczyć, czy jest to określony typ?Jak określić typy właściwości za pomocą odbicia?
EDYCJA: Moim celem jest zbadanie złożenia, aby zobaczyć, czy którykolwiek z typów w tym zestawie zawiera właściwości, które są MyType (lub odziedziczone z MyType).
Oto utwór Poszedłem na dół ...
AssemblyName n = new AssemblyName();
n.CodeBase = "file://" + dllName;
Assembly a = AppDomain.CurrentDomain.Load(n);
foreach (Type t in a.GetTypes())
foreach (PropertyInfo pi in t.GetProperties())
if (pi.PropertyType is MyType) // warning CS0184
Console.WriteLine("Found a property that is MyType");
To kompiluje z CS0184 UWAGA: podane wyrażenie jest nigdy z dostarczonym („”) MyType wpisać
powinienem powiedzieć "Właściwości" zamiast "członków". Zaktualizowałem to pytanie, mam nadzieję, że teraz jest jaśniejsze. –
@ Jon Skeet: nie związany: czy widziałeś ogłoszenie FinalBuilder? Całkiem śmieszne! –
@Mitch: Yup. Bardzo spytali mnie, czy to też jest w porządku. –