Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# asp:DropDownList从本地目录抓取数据?_C#_Asp.net_Upload - Fatal编程技术网

C# asp:DropDownList从本地目录抓取数据?

C# asp:DropDownList从本地目录抓取数据?,c#,asp.net,upload,C#,Asp.net,Upload,我的页面上有一个下拉列表&希望列表项是web服务器上本地目录中的文件夹。。。即 T:\表格 T:\手册 T:\软件 这是我到目前为止的代码 protected void Page_Load(object sender, EventArgs e) { DirectoryInfo di = new DirectoryInfo("C:/"); DirectoryInfo[] dirArray = di.GetDirectories(); Drop

我的页面上有一个下拉列表&希望列表项是web服务器上本地目录中的文件夹。。。即

T:\表格 T:\手册 T:\软件

这是我到目前为止的代码

protected void Page_Load(object sender, EventArgs e)
    {
        DirectoryInfo di = new DirectoryInfo("C:/");
        DirectoryInfo[] dirArray = di.GetDirectories();
        DropDownList1.DataSource = dirArray;
        foreach (DirectoryInfo i in dirArray)
        {
            DropDownList1.DataTextField = i.FullName;
            DropDownList1.DataValueField = i.FullName;
        }
    }
已解决

protected void Page_Load(object sender, EventArgs e)
    {
        DirectoryInfo di = new DirectoryInfo("C:/");

        DropDownList1.DataSource = di.GetDirectories();

        DropDownList1.DataBind();

        foreach (DirectoryInfo i in di.GetDirectories())
        {
            DropDownList1.DataTextField = i.FullName;
        }

    }
查看

System.IO.DirectoryInfo

System.IO.FileInfo

上课。显然,您只能读取web服务器的文件系统

System.IO.DirectoryInfo

System.IO.FileInfo

上课。显然,您只能读取您可以使用的web服务器的文件系统

List<string> dirList=new List<string>();

DirectoryInfo[] DI = new DirectoryInfo(@"T:\Forms\").GetDirectories("*.*",SearchOption.AllDirectories ) ;
foreach (DirectoryInfo D1 in DI)
{
    dirList.Add(D1.FullName);
}
List dirList=new List();
DirectoryInfo[]DI=new DirectoryInfo(@“T:\Forms\”).GetDirectories(“**”),SearchOption.AllDirectories);
foreach(DI中的DirectoryInfo D1)
{
dirList.Add(D1.全名);
}
对所有三个目录执行此操作,然后数据绑定到您可以使用的列表

List<string> dirList=new List<string>();

DirectoryInfo[] DI = new DirectoryInfo(@"T:\Forms\").GetDirectories("*.*",SearchOption.AllDirectories ) ;
foreach (DirectoryInfo D1 in DI)
{
    dirList.Add(D1.FullName);
}
List dirList=new List();
DirectoryInfo[]DI=new DirectoryInfo(@“T:\Forms\”).GetDirectories(“**”),SearchOption.AllDirectories);
foreach(DI中的DirectoryInfo D1)
{
dirList.Add(D1.全名);
}

对所有三个目录执行此操作,然后将数据绑定到列表

我建议使用这样一段代码

  DirectoryInfo di = new DirectoryInfo(@"e:\");
  ddlFolders.DataSource = di.GetDirectories();
  ddlFolders.DataTextField = "Name";
  ddlFolders.DataValueField = "FullName";
  ddlFolders.DataBind();

hth

我建议使用这样一段代码

  DirectoryInfo di = new DirectoryInfo(@"e:\");
  ddlFolders.DataSource = di.GetDirectories();
  ddlFolders.DataTextField = "Name";
  ddlFolders.DataValueField = "FullName";
  ddlFolders.DataBind();

hth

非常感谢,现在如何将数组中的值放到下拉列表中?您可以将数组直接绑定到下拉列表中。例如:dropDownList.DataSource=yourFileArray;然后设置DataTextField和DataValueField并调用databind。您还需要这方面的帮助吗?DataTextField和DataValue字段应该是作为字符串传递的属性的名称,而不是对象的实际值。例如“FullName”而不是i.FullName非常感谢,现在如何将数组中的值绑定到下拉列表?您可以将数组直接绑定到下拉列表。例如:dropDownList.DataSource=yourFileArray;然后设置DataTextField和DataValueField并调用databind。您还需要这方面的帮助吗?DataTextField和DataValue字段应该是作为字符串传递的属性的名称,而不是对象的实际值。例如“全名”而不是我全名