首页 新闻 会员 周边 捐助

asp.net帮忙看看哪里出问题 报错

0
[已关闭问题] 关闭于 2012-07-30 17:05

前台

<asp:GridView ID="grshow" runat="server">
    </asp:GridView>

后台

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Web.UI.HtmlControls;
using System.Data;
namespace trafficApplication1.manage
{
    public partial class shanwenjian : System.Web.UI.Page
    {
        DataTable dt;
        DataRow dr;
        protected void Page_Load(object sender, EventArgs e)
        {
            getwenjian();
        }

        public DataTable creatdt()
        {
            dt = new DataTable();
            dt.Columns.Add("name", typeof(string));
            return dt;
        }

        public void getwenjian()
        {

            grshow.DataSource = creatdt();
        int i=0;
            string str = Server.MapPath("~/manage/upload/");

            DirectoryInfo dir = new DirectoryInfo(str);
            DirectoryInfo[] dirr = dir.GetDirectories();
            foreach (DirectoryInfo di in dirr)
            {
                dr[i] =di.Name;
                dt.Rows.Add(dr);
          i++; } } } }

错误

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

未将对象引用设置到对象的实例。

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

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

源错误: 44:                 dr[0] =di.Name;
行 45:                 dt.Rows.Add(dr);
行 46:             }

源文件: C:\Documents and Settings\Administrator\桌面\交通质监平台\trafficApplication1\trafficApplication1\manage\shanwenjian.aspx.cs    行: 44 
隔壁王叔的主页 隔壁王叔 | 初学一级 | 园豆:4
提问于:2012-07-28 16:10
< >
分享
所有回答(6)
0
creatdt();这个为null,赋值给
grshow.DataSource 会报错的。你调试一下就知道了原因了。
悟行 | 园豆:12559 (专家六级) | 2012-07-28 16:39

为null的话 只是没有绑定上数据而已 不会报错的

支持(0) 反对(0) 隔壁王叔 | 园豆:4 (初学一级) | 2012-07-28 16:45
0

为null的话 只是没有绑定上数据而已 不会报错的

隔壁王叔 | 园豆:4 (初学一级) | 2012-07-28 16:41
0

dt.Rows.Add(dr[i]); 是不是该有个i

殷中兴 | 园豆:202 (菜鸟二级) | 2012-07-28 16:53

程序还没走到那就已经报错了

支持(0) 反对(0) 隔壁王叔 | 园豆:4 (初学一级) | 2012-07-28 16:55

@小 莫: 我都菜鸟二级了 真不知道那错了  知道了告诉我

支持(0) 反对(0) 殷中兴 | 园豆:202 (菜鸟二级) | 2012-07-28 16:59

@殷中兴: 这个和是什么等级有什么关系??

支持(0) 反对(0) 隔壁王叔 | 园豆:4 (初学一级) | 2012-07-28 17:13
0

dr未初始换,并且在foreach中每次都该初始化

pstune | 园豆:239 (菜鸟二级) | 2012-07-28 18:07
0
foreach (DirectoryInfo di in dirr)
            {
                dr=dt.NewRow();
dr[0]
=di.Name; dt.Rows.Add(dr);
          }

我不知道怎么形容这种造成这种bug的原因。能力?细心?技能?智力?
好好买本入门书,好好看了再动手吧。
arg | 园豆:1047 (小虾三级) | 2012-07-28 23:49

当你遇到一个新问题 自己尝试解决而没有解决的时候 请问这是什么原因造就了你

支持(0) 反对(0) 隔壁王叔 | 园豆:4 (初学一级) | 2012-07-30 08:59
0

楼上把我想说的 都说了

八戒的师傅 | 园豆:1472 (小虾三级) | 2012-07-29 01:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册