Подскажите — есть ли простой способ получения MethodInfo для метода с ref-параметрами?
using using System.Reflection;
static class MYCLASS
{
public static void DUMMY3(int x)
{
x=0;
}//DUMMY3
//-----------------------------------------------------------------------
public static void DUMMY3(ref int x)
{
x=0;
}//DUMMY3
//-----------------------------------------------------------------------
public static void Test_03()
{
MethodInfo m
=typeof(MYCLASS)
.GetRuntimeMethod
(nameof(MYCLASS.DUMMY3),
new System.Type[]
{
typeof(int) // <---------
});
}//Test_03
};//class MYCLASS
Test_03 получает MethodInfo для "public static void DUMMY3(int x)".
А как мне получить MethodInfo для "public static void DUMMY3(
ref int x)"?
Я так понимаю, мне нужно вместо typeof(int) указать ссылочный тип (ref int).
А как это сделать не понятно...
Или надо получать список все методов класса и самому в нем искать?
Спасибо
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
КД>А как мне получить MethodInfo для "public static void DUMMY3(ref int x)"?
.GetRuntimeMethod
(nameof(MYCLASS.DUMMY3),
new System.Type[]
{
typeof(int).MakeByRefType() // <---------
});
Console.WriteLine(m);
}//Test_03
Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>Я так понимаю, мне нужно вместо typeof(int) указать ссылочный тип (ref int).
Да, через вызов метода
MakeByRefType
В твоем случае
typeof(int).MakeByRefType()
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Здравствуйте, Коваленко Дмитрий, Вы писали:
Посмотри
.Net Core, AppDomain, WCF, RPC маршалинг по Tcp/Ip свой велосипед
Там и реф параметры и дженерик методы и классы.
Поддержка методов расширений для классов, находящихся в одной сборке и для Linq методов.