共用方式為


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

用來存取私用物件的泛型成員。

命名空間:  Microsoft.VisualStudio.TestTools.UnitTesting
組件:  Microsoft.VisualStudio.QualityTools.UnitTestFramework (在 Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll 中)

語法

'宣告
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

參數

  • name
    類型:String

    要叫用的成員名稱。

  • bindingFlags
    類型:BindingFlags
  • parameterTypes
    類型:array<Type[]

    Type 物件的陣列,表示要存取之方法的參數數目、順序和型別。

    -或-

    Type 型別的空陣列 (也就是,Type[] types = new Type[0]),表示取得沒有參數的方法。

  • args
    類型:array<Object[]

    成員所需的任何引數。

  • culture
    類型:CultureInfo

    CultureInfo 物件,表示要使用的全球化地區設定,它可能是特定地區設定轉換所需要的,例如將數值的 String 轉換成 Double。

    -或-

    nullnull 參考 (即 Visual Basic 中的 Nothing),則使用目前執行緒的 CultureInfo

  • typeArguments
    類型:array<Type[]

    叫用泛型方法時所要使用的型別引數陣列。

傳回值

類型:Object

範例

下列程式碼位於正在測試的應用程式中。 其中包含了想要測試的泛型方法:TestThisMethod<T>。

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

    public Customer()
    {
    }
}

下列程式碼是單元測試中的測試方法。 它會示範如何在叫用您所測試的方法時,將型別引數傳入最後的 Type[] 參數。

[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);
}

.NET Framework 安全性

請參閱

參考

PrivateObject 類別

Invoke 多載

Microsoft.VisualStudio.TestTools.UnitTesting 命名空間