简单问题,大家帮忙看一下了

sndy77 2003-08-22 01:49:01
我想列出C盘的根目录,代码如下:提示出错,不知错在哪儿?
——————————————————————————————————
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace Unique
{
public class BorwseFiles:Page
{
private System.Web.UI.WebControls.Label lbl_Text;
DirectoryInfo myDirectoryInfo;
DirectoryInfo[] dir;

private void Page_Load(object sender,System.EventArgs e)
{
myDirectoryInfo=new DirectoryInfo("c:\\");
dir=myDirectoryInfo.GetDirectories();
foreach(DirectoryInfo myDir in dir)
lbl_Text.Text=myDir.Name;
}
}
}
——————————————————————————-
出错住息:
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪:


[NullReferenceException: 未将对象引用设置到对象的实例。]
Unique.BorwseFiles.Page_Load(Object sender, EventArgs e) +106
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +29
System.Web.UI.Page.ProcessRequestMain() +724


...全文
76 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sndy77 2003-08-23
  • 打赏
  • 举报
回复
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace Unique
{
public class BorwseFiles:Page
{
private System.Web.UI.WebControls.Label lb;
private void Page_Load(object sender,System.EventArgs e)
{
string[] dirs = Directory.GetDirectories(@"c:\","*.*");

foreach(string dir in dirs)
{
lb.Text+="<br>"+ dir;

}
}
}
}

还是不行.
sndy77 2003-08-22
  • 打赏
  • 举报
回复
楼上的,改成你说的还是不行啊
------------------------------------------------
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace Unique
{
public class BorwseFiles:Page
{
private System.Web.UI.WebControls.Label lbl_Text;
string[] dirs = Directory.GetDirectories(@"c:\","*.*");

foreach(string dir in dirs)
{
lb.Text+ ="<br>"+ dir;

}

}
}
--------------------------------------------
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。

编译器错误信息: CS1519: 类、结构或接口成员声明中的标记“foreach”无效

源错误:



行 12: string[] dirs = Directory.GetDirectories(@"c:\","*.*");
行 13:
行 14: foreach(string dir in dirs)
行 15: {
行 16: lb.Text+ ="<br>"+ dir;

xrll 2003-08-22
  • 打赏
  • 举报
回复
或先放一个:
<asp:label ID="lb" runat="server">
在代码中:
string[] dirs = Directory.GetDirectories(@"c:\","*.*");
foreach (string dir in dirs)
{
lb.Text+ ="<br>"+ dir;

}
xrll 2003-08-22
  • 打赏
  • 举报
回复
先在页面放一个:
<asp:placeholder ID="pl" runat="server"/>
xrll 2003-08-22
  • 打赏
  • 举报
回复
string[] dirs = Directory.GetDirectories(@"c:\","*.*");
foreach (string dir in dirs)
{

Label lb = new Label();
lb.Text = dir;
pl.Controls.Add(lb);
}
xiangzionest 2003-08-22
  • 打赏
  • 举报
回复
是Label的原因,你把Label直接拖到界面,运行它就可以了,我做了测试,肯定可以了
sndy77 2003-08-22
  • 打赏
  • 举报
回复
楼上的,试过了,不行啊
chmodyou 2003-08-22
  • 打赏
  • 举报
回复
myDirectoryInfo=new DirectoryInfo("c://");
sndy77 2003-08-22
  • 打赏
  • 举报
回复
各位快帮忙了,分不够再加了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧