Condividi tramite


Metodo PrivateObject.Invoke (String, BindingFlags, array<Type[], array<Object[], CultureInfo, array<Type )

Utilizzato per accedere ai membri generici di un oggetto privato.

Spazio dei nomi:  Microsoft.VisualStudio.TestTools.UnitTesting
Assembly:  Microsoft.VisualStudio.QualityTools.UnitTestFramework (in Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)

Sintassi

'Dichiarazione
Public Function Invoke ( _
    name As String, _
    bindingFlags As BindingFlags, _
    parameterTypes As Type(), _
    args As Object(), _
    culture As CultureInfo, _
    typeArguments As Type() _
) As Object
public Object Invoke(
    string name,
    BindingFlags bindingFlags,
    Type[] parameterTypes,
    Object[] args,
    CultureInfo culture,
    Type[] typeArguments
)
public:
Object^ Invoke(
    String^ name, 
    BindingFlags bindingFlags, 
    array<Type^>^ parameterTypes, 
    array<Object^>^ args, 
    CultureInfo^ culture, 
    array<Type^>^ typeArguments
)
member Invoke : 
        name:string * 
        bindingFlags:BindingFlags * 
        parameterTypes:Type[] * 
        args:Object[] * 
        culture:CultureInfo * 
        typeArguments:Type[] -> Object 
public function Invoke(
    name : String, 
    bindingFlags : BindingFlags, 
    parameterTypes : Type[], 
    args : Object[], 
    culture : CultureInfo, 
    typeArguments : Type[]
) : Object

Parametri

  • parameterTypes
    Tipo: array<System.Type[]
    Matrice di oggetti Type che rappresenta il numero, l'ordine e il tipo di parametri per il metodo a cui accedere.
    oppure
    Matrice vuota di tipo Type (ovvero Type[] types = new Type[0]) per ottenere un metodo che non accetta parametri.
  • args
    Tipo: array<System.Object[]
    Eventuali argomenti richiesti dal membro.
  • culture
    Tipo: System.Globalization.CultureInfo
    Oggetto CultureInfo che rappresenta le impostazioni locali di globalizzazione da utilizzare, che potrebbero essere necessarie per le conversioni specifiche delle impostazioni locali, come la conversione di un valore String numerico in un valore Double.
    oppure
    nullriferimento null (Nothing in Visual Basic) per utilizzare il valore CultureInfo del thread corrente.
  • typeArguments
    Tipo: array<System.Type[]
    Matrice di argomenti di tipo da utilizzare quando si richiama un metodo generico.

Valore restituito

Tipo: System.Object

Esempi

Il codice riportato di seguito si trova nell'applicazione sottoposta a test. Contiene un metodo generico che si desidera testare, TestThisMethod<T>.

internal class Customer
{
    internal T TestThisMethod<T>(T value)
    {
        return (value);
    }

    public Customer()
    {
    }
}

Il codice riportato di seguito rappresenta un metodo di test nello unit test. In tale codice viene illustrato come passare un argomento di tipo, nel parametro Type[] finale, quando viene richiamato il metodo di cui si sta eseguendo il test:

[TestMethod]
public void TestSetCustomerId()
{
    PrivateObject po = new PrivateObject(typeof(Customer));

    int id = 100;

    int actual = (int)po.Invoke("TestThisMethod", new Type[] { typeof(int) }, new Object[] { id }, new Type[] { typeof(int) });

    Assert.AreEqual(actual, id);
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

PrivateObject Classe

Overload Invoke

Spazio dei nomi Microsoft.VisualStudio.TestTools.UnitTesting