Укажите в элементе управления DropDownList список всех подкаталогов, которые существуют в определенном каталоге на сервере. - PullRequest
0 голосов
/ 22 апреля 2010

Я хочу связать элемент управления DropDownList со списком всех подкаталогов, которые существуют в определенном каталоге на сервере. Каталог, который я хочу найти, находится в корне приложения. Я довольно новичок в программировании, и я не уверен, с чего начать.

Я нашел этот код на сайте:

 Dim root As String = "C;\"
        Dim folders() As String = Directory.GetDirectories(root)  
        Dim sb As New StringBuilder(2048)  
        Dim f As String  
        For Each f In folders  
            Dim foldername As String = Path.GetFileName(f)  
            sb.Append("<option>")  
            sb.Append(foldername)  
            sb.Append("</option>")  
        Next  
        Label3.Text = "<select runat=""sever"" id=""folderlist""" & sb.ToString() & "</select>"  

Полагаю, это vb. но мой инструмент в asp, так что они похожи в vbscript, так что я могу использовать его.

1 Ответ

0 голосов
/ 22 апреля 2010

Вот очень быстрый и грязный пример того, что вы хотите.

Есть много улучшений, которые я хотел бы сделать, прежде чем рассматривать его как готовый к работе код.

Тем не менее, сервер должен показать вам некоторые основные понятия, которые вы ищете.

<%@ Language=VBScript  ENABLESESSIONSTATE = False%>

<select id="selFiles" name="selFiles" class="Select" style="width: 250px" tabindex="130">

<% 

Dim fso, folder, files

Set fso = CreateObject("Scripting.FileSystemObject")  

Set folder = fso.GetFolder("C:\")  

Set files = folder.Files    
For each folderIdx In files 

    Response.Write("<option>" + folderIdx.Name + "</option>")

Next  

 %>
</select>

Одним из мест, где можно начать поиск улучшений, было бы введение ваших собственных компонентов, которые будут выполнять все сложные действия, такие как перечисление файлов, это дает вам больше контроля, дает большую модульность в вашем дизайне и (возможно, самое главное) дает вам лучший контроль над безопасность.

Информация, приведенная ниже, может быть немного неправильной (она хранится в памяти старого проекта), но должна быть достаточно близкой и дать вам представление о внедрении компонентов кода в классический код ASP.

С помощью ASP classic вы создаете объекты с использованием кода, подобного следующему:

<object runat="server" progid="YourObject.Class" id="oObject" VIEWASTEXT></object>

Где YourObject.Class - программный идентификатор компонента, установленного в реестре.

...