Мой код получает анонимный объект, созданный другим методом. Я хотел бы получить доступ и пройти через вложенную коллекцию в этом объекте. Я пытался придумать несколько разных способов его приведения с использованием ключевого слова «as», но безрезультатно.
Вот код, который создает объект:
var result = new object();
foreach (var item in items)
{
result = new
{
Variants = item.Value.Select(m => m.Item2).GroupBy(n => n.Item1).Select(r => new
{
Name = r.Key,
Items = r.Select(p => new
{
Value = p.Item2.Trim(),
Text = p.Item2.Substring(0, p.Item2.LastIndexOf('_')).Trim()
}).Where(p => !string.IsNullOrEmpty(p.Text)).ToList()
})
};
}
Visual Studio дает мне следующую подпись при наведении курсора на переменную, которая получила этот анонимный тип:
{ Variants = {System.Linq.Enumerable.WhereSelectEnumerableIterator<System.Linq.IGrouping<string, System.Tuple<string, string>>, <>f__AnonymousType1<string, System.Collections.Generic.List<<>f__AnonymousType2<string, string>>>>} }
Короче говоря: я хотел бы получить доступ к полям Text коллекции.
Вот окно QuickWatch, показывающее структуру и данные этого объекта: Окно QuickWatch
Буду признателен за любую помощь!
PS: Не могу изменить код в методе отправки.