У меня есть сетка, которая связывает несколько дочерних объектов данных со столбцами без проблем, используя синтаксис, определенный в http://www.telerik.com/help/aspnet-ajax/grdbindingtosubobjects.html.
Однако я не могу понять, как агрегировать дочерний объект, представляющий собой список или коллекцию. Например, если у меня есть объект Customer и я хочу получить первый адрес улицы клиента, я бы использовал DataField="Customer.Addresses[0].Street"
на стандартном GridBoundColumn
.
Как я могу получить количество адресов? Я попробовал все виды полей данных GridCalculatedColumn и выражений, но безрезультатно. Я ищу что-то вроде этого:
Это не работает, конечно. Фактически, если я пытаюсь выполнить подсчет для любого поля данных с точками, я получаю исключение
" System.Data.SyntaxErrorException: синтаксическая ошибка в агрегированном аргументе: ожидание аргумента из одного столбца с возможным квалификатором 'Child'. "
Например, попытка использовать выражение Count({0})
с полями данных, для которых установлено значение Customer.FirstName
(из которых есть только одно), вызывает исключение во время выполнения. Выполнение того же действия с полем данных без точек, например SendDate, не приводит к тому же исключению.