J'ai une classe Member dans un projet. Je trouve cette classe en utilisant powershell sur la console du gestionnaire de paquets dans Visual Studio.Comment déterminer si un type implémente une interface dans Powershell
public class Member : ICacheable
{
public string FirstName;
public string LastName;
...
}
Il imprime quelque chose comme ci-dessous. Comment vérifier cette classe est assignable à ICacheable ou non. Actaully J'essaye de trouver toutes les classes qui implémente ICacheable mais je ne pourrais trouver aucune propriété qui m'aidera à trouver ceci.
IsDirty : False
FileCount : 1
Name : Member.cs
Collection : System.__ComObject
Properties : System.__ComObject
DTE : System.__ComObject
Kind : {6BB5F8EE-4483-11D3-8BCF-00C04F8EC28C}
ProjectItems : System.__ComObject
Object : System.__ComObject
ExtenderNames : {}
ExtenderCATID : {610D4615-D0D5-11D2-8599-006097C68E81}
Saved : True
ConfigurationManager :
FileCodeModel : System.__ComObject
Document : System.__ComObject
SubProject :
ContainingProject : System.__ComObject
UPDATE (SOLUTION)
Note: $ memberItem est un ProjectItem que je vous ai montré au-dessus.
$memberItem.FileCodeModel.CodeElements | % { $_.Children | % { $_.ImplementedInterfaces } }
DTE : System.__ComObject
Collection : System.__ComObject
Name : ICacheable
FullName : ApplicationBase.Core.Interface.ICacheable
ProjectItem :
Kind : 8
IsCodeType : True
InfoLocation : 2
Children :
Language : {B5E9BD34-6D3E-4B5D-925E-8A43B79820B4}
StartPoint :
EndPoint :
ExtenderNames : {ExternalLocation}
ExtenderCATID :
Parent : System.__ComObject
Namespace : System.__ComObject
Bases : System.__ComObject
Members : System.__ComObject
Access : 1
Attributes : System.__ComObject
DocComment :
Comment :
DerivedTypes :
IsGeneric : False
DataTypeKind : 1
Parts :
Je vérifie, et cela fonctionne aussi sur la console de gestionnaire de paquets. Cela me donne une idée. Ensuite, je devrais obtenir le type pour atteindre la propriété ImplementedInterfaces. Je le cherche maintenant. –
Vous m'avez donné l'idée puis j'ai trouvé la solution. J'ai ajouté une solution à la question. Merci. –