powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вызов обобщенного метода по переданному типу данных
8 сообщений из 8, страница 1 из 1
Вызов обобщенного метода по переданному типу данных
    #39277214
JohnSparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток

Возможно ли реализовать следующее:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
void SomeMethod(string typename)
{
	var type = Type.GetType(typename);
	
	var test = new Test();
	test.Process<type>(() => {...});
}

public class Test
{
	public void Process<T>(Action<T> handler)
	{
		...
	}
}



Суть проблемы: возможно ли по переданному в обычный метод имени типа вызвать соответствующий обобщенный метод?
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277220
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тип Т должен быть известен на этапе компиляции.
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277288
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JohnSparrowДоброго времени суток

Возможно ли реализовать следующее:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
void SomeMethod(string typename)
{
	var type = Type.GetType(typename);
	
	var test = new Test();
	test.Process<type>(() => {...});
}

public class Test
{
	public void Process<T>(Action<T> handler)
	{
		...
	}
}



Суть проблемы: возможно ли по переданному в обычный метод имени типа вызвать соответствующий обобщенный метод?

Reflexion?
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277314
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинReflexion? OOP Ъ! GoF
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277322
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если подсказать компилятору тип - то можно..
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
 class Program
    {
       static void SomeMethod(string typename)
        {
           var instance = Activator.CreateInstance(Type.GetType(typename));
           var test = new Test();
           test.Process(ss => { Console.Write(ss.GetType().Name);  }, instance);
        }
        static void Main(string[] args)
        {
            SomeMethod("ConsoleApplication1.Test");
        }
    }
    public class Test
    {
        public void Process<T>(Action<T> handler,T t)
        {
            handler.Invoke(t);
        }
    }
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277367
JohnSparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо.
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277564
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиесли подсказать компилятору тип - то можно..

тута завсегда будет object, нафига тогда вообще все эти дженерики?
...
Рейтинг: 0 / 0
Вызов обобщенного метода по переданному типу данных
    #39277598
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВ,
Ну и зачем ты у меня это спрашиваешь? спроси у та.
он спросил ему ответили - нет, я добавил можно если указать тип через аргумент и ффсё..
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вызов обобщенного метода по переданному типу данных
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]