Декларативный синтаксис для коллекции типов значений в ASP.NET? - PullRequest
1 голос
/ 17 июля 2010

Я знаю, что в ASP.NET (в первую очередь речь идет о 2.0) можно установить свойство для объекта, который принимает набор вещей (перечисляемый тип, который, как я предполагаю, является триггером), и затем ссылаться на него декларативно.Например:

<ObjectDataSource properties="blahblahblah">
    <SelectParameters>
        <asp:Parameter />
    </SelectParameters>
</ObjectDataSource>

Это часть <asp:Parameter />, которая является корнем моего вопроса.Скажем, я хотел более простую коллекцию по типу.Скажите List<String> или, если генерики отсутствуют, IntegerCollection или StringCollection.Как бы я использовал это декларативно?Разрешено ли <string value=''>, или я могу добавить в него необработанные значения, такие как <StringCollection>string, string, string</StringCollection> или как?

РЕДАКТИРОВАТЬ:

Мне кажется, что я не достаточно ясно в своем вопросеЯ понимаю, что ObjectDataSource реализует свое свойство SelectParameters как ParametersCollection, и что можно использовать это свойство декларативно (на странице ASPX) для настройки типов параметров в этой коллекции.Что мне интересно, если я сделал что-то вроде StringCollection в качестве свойства другого элемента управления, есть ли синтаксис (в ASPX) для добавления строк в эту коллекцию?Или мне нужно было бы определить класс-оболочку, например, как DropDownList принимает ListItems для заполнения своей коллекции?

Ответы [ 2 ]

1 голос
/ 23 октября 2010

В конце концов я нашел то, что мне нужно для этого. Общий ответ заключается в использовании атрибута TypeConverter в свойстве. GridView делает это с (в качестве одного примера) DataKeyNames, преобразуя список имен в строке через запятую в массив строк.

1 голос
/ 17 июля 2010

В источнике данных объекта параметр выбора относится к параметру в методе, который возвращает коллекцию. Этот параметр должен быть чем-то, что может быть преобразовано из строки, это не может быть коллекция или массив.

...