<FileCollection>

Pole typu <FileCollection> je kolekcí polí typu <File>. Pořadí jednotlivých souborů v kolekci lze měnit pomocí drag-and-drop. V .aspx se pole typu <FileCollection> zpravidla vypísuje pomocí <je:filelink> vloženého do <je:repeater> (viz níže uvedený příklad). Ve všem ostatním se shoduje s polem typu <File>, kde je uveden kompletní popis.

<FileCollection name="filesForDownload" />

Příklady

Mějme v Site.config proměnnou page typu PageWithFiles, který obsahuje FileCollection:

<Vars>
    <Var name="page" type="PageWithFiles" />
</Vars>
<Types>
    <Type name="PageWithFiles">
        <FileCollection name="files" />
    </Type>
</Types>

Kolekce files obsahuje prvky typu <File> a pracuje se s ní podobně jako s jakoukoliv jinou kolekcí. Prvky kolekce jsou přístupné pod proměnnou .item. Výpis seznamu všech souborů ke stažení, včetně ikonky typu a velikostí souborů, by vypadal takto:

<je:repeater runat="server" source="page.files">
    <item>
        <je:filelink runat="server" field=".item ">
            <je:item runat="server" field=".item.originalName" />
            (<je:item runat="server" field=".item.size" />)
        </je:filelink>
    </item>
</je:repeater>

Řešení klasickou kolekcí

Podobného výsledku můžeme dosáhnout i vlastním typem a kolekcí:

<Type name="PageWithFiles">
    <Collection name="files" itemType="FileItem" />
</Type>
<Type name="FileItem" defaultOrder="custom">
    <File name="item" />
</Type>

Výhodou tohoto přístupu je, že typ FileItem lze kdykoliv rozšířit o libovolná pole, např. textový popis souboru.

Připomínky a postřehy

Máte-li nějakou připomínku, dobrý nápad nebo jste našli v dokumentaci chybu, rádi od vás uslyšíme.