|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
|
Определение типа объекта System.Collections.Generic23.08.2019, 08:56. Показов 5425. Ответов 33
Добрый день.
Может быть кто-то подскажет, как однозначно определить, какого типа объект, который является коллекцией элементов System.Collections.Generic. Имеется в виду это dictionary<Tkey,Tvalue>, List<>, Collection<> и т.д. ? У объекта получается его тип через tagType = object.GetType(), в котором есть признак что это Generic - tagType.IsGenericType = true, есть список атрибутов типа tagType.GetGenericArguments(), в котором указываются типы используемые в исходном объекте (у List соответственно 1 аргумент, у dictionary 2 и т.п.). В FullName указан тип в виде строки "System.Collections.Generic.List`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]", но хотелось бы чтобы это была не строка, а прям какой то тип языка... Куда копать? кто подскажет...
0
|
|
| 23.08.2019, 08:56 | |
|
Ответы с готовыми решениями:
33
Как из ArrayList получить System.Collections.Generic.List Generic, определение типа переменной во время выполнения программы System.Collections.IEnumerable; как его подключить? |
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
|||||||
| 26.08.2019, 06:34 [ТС] | |||||||
0
|
|||||||
|
14578 / 9485 / 1360
Регистрация: 21.01.2016
Сообщений: 35,779
|
|
| 26.08.2019, 07:33 | |
|
auskst, русский язык для именования свойств и классов? Серьёзно, чтоли?
![]() И почему DataTable? Если схема заранее известна, то правильнее (и сильно удобнее для дальнейшей работы) завести классы.
0
|
|
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
|||
| 26.08.2019, 07:59 [ТС] | |||
|
0
|
|||
|
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
|
|
| 26.08.2019, 15:21 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
||||||||
| 27.08.2019, 06:33 [ТС] | ||||||||
0
|
||||||||
|
14578 / 9485 / 1360
Регистрация: 21.01.2016
Сообщений: 35,779
|
|
| 27.08.2019, 07:08 | |
|
auskst, да, тут руками придётся всё конвертить. Вообще, модель в конец мутная)
0
|
|
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
|
| 27.08.2019, 07:18 [ТС] | |
|
0
|
|
|
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
|
|
| 27.08.2019, 10:03 | |
|
auskst, как должен выполняться код value.Key, value.Value, если value это произвольный тип без свойств Key, Value?
Как выглядит сигнатура метода AppendNodes? Там string, DataSet на входе?
0
|
|
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
||
| 27.08.2019, 13:31 [ТС] | ||
|
P.S. Вы мне помочь хотите или свою какую-то задачу решаете?
0
|
||
|
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
|
|||
| 27.08.2019, 14:58 | |||
|
0
|
|||
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
|||||||||||||
| 27.08.2019, 15:05 [ТС] | |||||||||||||
Вот код
0
|
|||||||||||||
|
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
|
||
| 27.08.2019, 15:24 | ||
|
Или в AppendNodes второй и третий параметр из примера имеют тип object?
0
|
||
|
0 / 0 / 0
Регистрация: 22.10.2017
Сообщений: 55
|
|||||||
| 27.08.2019, 15:27 [ТС] | |||||||
0
|
|||||||
|
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
|
||||||||||||
| 27.08.2019, 16:01 | ||||||||||||
|
А еще есть такое понятие как ковариантность/контравариантность типов. Приведение типов в c# сделано так чтобы гарантировать консистентность input/output параметров. И например такой код не будет компилироваться
Можно использовать non generic интерфейс IDictionary который реализован в Dictionary<,>Тогда можно читать из этого словаря, key и value будут приведены к object, но при попытке добавить в словарь несовместимый по типу обьект будет runtime error.
0
|
||||||||||||
| 27.08.2019, 16:01 | |
|
Получение свойств из Generic объекта Использование byte[] как generic-типа Объявление обобщённого типа (Generic) для стандартных целочисленных типов Необработанное исключение типа "System.Net.Sockets.SocketException" в System.dll Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302
Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
|