.NET 4.x Возможности рефлексии - запись поле в зависимости от типа аргумента - C#

Узнай цену своей работы

Формулировка задачи:

Тренировался в написании Generic методов и задался вопросом, - можно ли в зависимости от типа входящего аргумента записывать данные в то или иное поле (с условием что поле заранее в названии содержит имя типа)? То есть, есть 3 класса
class A
{
 
}
class B
{
 
}
class C
{
 
}
и класс в котором происходят преобразования:
class Actions
{
   List<string> listA = new List<string>();
   List<string> listB = new List<string>();
   List<string> listC = new List<string>();
 
   public void GenericAction<T>(List<T> data)
   {
      /*
         Тут в зависимости от типа T вызываем поле list+typeof(T).Name;
         например T = A, в таком случае listA.Add(somevalue);
      */
   }
}
Не совсем мне ясно, можно ли осуществить это на уровне рефлексии?

Решение задачи: «.NET 4.x Возможности рефлексии - запись поле в зависимости от типа аргумента»

textual
Листинг программы
list.GetType().GetMethod(...).Invoke(list, new object[] { arg1, arg2, ... });

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5
Похожие ответы