- - PR -
件名:【VB.NET】リフレクションでByref引数のメソッドをGetMethodできない
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-07-14 18:16
NUnitを使って、リフレクションによるPrivateメソッドのテストをしています。
参照渡し引数のメソッドが、GetMethodできません。(Nothingが返ってくる) 値渡し(ByVal)に変えるとGetMethodできます。 ご教授お願いいたします。 ----(呼出元はじめ)-------------- <Test()> _ Public Sub testByrefLong_test2() Dim lng As Long Dim infoType As Type = GetType(TestClass) Dim methodInfo As Reflection.MethodInfo _ = infoType.GetMethod("testByrefLong", Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Instance, Nothing, New Type() {GetType(Long)}, Nothing) End Sub ----(呼出元おわり)-------------- ----(呼出先はじめ)-------------- Public Class TestClass Private Sub testByrefLong(ByRef lng As Long) End Sub End Class ----(呼出先おわり)-------------- | ||||
|
投稿日時: 2006-07-14 18:34
引数の型指定部分の、GetType(Long)を、GetType(Long).MakeByRefTypeとするか、 .NET Framework 1.?の場合はType.GetType("System.Int64&") などとしてみてください。 ※mscorlib 以外にある型だと、&をつける方はこのままではいけませんが。 | ||||
|
投稿日時: 2006-07-20 15:42
二重スレにもかかわらず回答ありがとうございました。
その通り動きました! ありがとうございます! |
1