2010-04-22 46 views
0

我想數據綁定DropDownList控件與服務器上特定目錄中存在的所有子目錄的列表。我想要搜索的目錄位於應用程序的根目錄中。我對編程相當陌生,我不確定哪裏可以開始。databind 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中類似的東西,以便我可以使用它。

+0

這看起來非常像ASP/VB.NET,但問題是標記爲asp經典,你說你的工具是asp,你究竟是什麼意思? – 2010-04-22 06:45:19

+0

@thomask我把它標記爲asp-classic,從請求vbscript的註釋中提取,並提到asp。我本來可以完全錯誤的,但相信當他抱怨我的回答時,他會清除那個:) – 2010-04-22 06:49:24

+0

我相信你是對的:) – 2010-04-22 09:25:27

回答

0

這是一個非常快速和骯髒的例子,你想要什麼。

在我考慮生產就緒代碼之前,我會做出很多改進。

然而,它應該向您展示您之後的一些基本概念。

<%@ 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經典創建使用類似的代碼對象:

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

哪裏YourObject.Class是安裝在註冊表中的一個組件的程序化ID。

+0

這對我來說太過技術了,因爲我只是一個初學者。但我會盡力理解它。非常感謝您的幫助。 – sushant 2010-04-22 06:38:56

+0

@sushant如果你只是在自己的項目上工作,那麼不要太擔心,按照你的步調學習,並專注於我給出的解決方案,並嘗試理解FileSystemObject以及如何創建HTML代碼。如果您有資格從事這項工作,那麼我會要求您的僱主爲您安排一些培訓,因爲安全風險會影響他們的業務,並且他們有責任爲您提供所需的工具。 – 2010-04-22 06:47:00

+0

感謝您的關注。米做我自己的項目,所以我可能會自己學習。順便說一句,我們在談論什麼安全風險? – sushant 2010-04-22 06:52:19

相關問題