Если ObjectDataSource.SelectMethod = A и если A () возвращает один объект типа O, то этот объект помещается в одноэлементную коллекцию IEnumerable и возвращается методом ODS.Select
Таким образом, предполагая, что ODS.SelectMethod указывает на метод A (), тогда, если A () возвращает нуль, при вызове ODS этот ноль (я предполагаю) обернут в один элемент IEnumerable collection и исключение не выбрасывается. Аналогично, если ODS.SelectMethod указывает на метод B (), который возвращает список объектов, и если B () возвращает пустую коллекцию при вызове ODS, то исключение не выдается.
Но если вместо этого метод возвратит (при вызове ODS.Select ) пустую коллекцию строк ( string [] ), то я получу исключение « Источник данных для GridView не имел никаких свойств или атрибутов, из которых можно было бы сгенерировать столбцы ». Чем коллекция пустых строк отличается от других пустых коллекций, которые не вызывают исключение?
Спасибо