首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

救助:“/FileUpLoad”应用程序中的服务器异常。未将对象引用设置到对象的实例

2012-02-02 
救助:“/FileUpLoad”应用程序中的服务器错误。未将对象引用设置到对象的实例。“/FileUpLoad”应用程序中的服务

救助:“/FileUpLoad”应用程序中的服务器错误。未将对象引用设置到对象的实例。
“/FileUpLoad”应用程序中的服务器错误。
--------------------------------------------

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

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

源错误:  


行   57:   StringBuilder   strLabel=new   StringBuilder();//显示上传信息的字符串
行   58:  
行   59:   strBrowserFileName=Path.GetFileName(File1.PostedFile.FileName);
行   60:   strServerFileName=Path.GetDirectoryName(Server.MapPath( "WebForm1.aspx "))+ "\\ "+strBrowserFileName;
行   61:   File1.PostedFile.SaveAs(strServerFileName);
 

源文件:   f:\web\fileupload\webform1.aspx.cs         行:   59  

堆栈跟踪:  


[NullReferenceException:   未将对象引用设置到对象的实例。]
      FileUpLoad.WebForm1.Button1_Click(Object   sender,   EventArgs   e)   in   f:\web\fileupload\webform1.aspx.cs:59
      System.Web.UI.WebControls.Button.OnClick(EventArgs   e)
      System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String   eventArgument)
      System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler   sourceControl,   String   eventArgument)
      System.Web.UI.Page.RaisePostBackEvent(NameValueCollection   postData)
      System.Web.UI.Page.ProcessRequestMain()

 
————————————————————————————————
以下是源程序


using   System;
using   System.Collections;
using   System.ComponentModel;
using   System.Data;
using   System.Drawing;
using   System.Web;
using   System.Web.SessionState;
using   System.Web.UI;
using   System.Web.UI.WebControls;
using   System.Web.UI.HtmlControls;
using   System.IO;
using   System.Text;
namespace   FileUpLoad
{
///   <summary>
///   WebForm1   的摘要说明。
///   </summary>
public   class   WebForm1   :   System.Web.UI.Page
{
protected   System.Web.UI.WebControls.Label   Label1;
protected   System.Web.UI.HtmlControls.HtmlInputFile   File1;
protected   System.Web.UI.WebControls.Label   Label2;
protected   System.Web.UI.WebControls.Button   Button1;


private   void   Page_Load(object   sender,   System.EventArgs   e)
{
//   在此处放置用户代码以初始化页面
}

#region   Web   窗体设计器生成的代码
override   protected   void   OnInit(EventArgs   e)
{
//
//   CODEGEN:   该调用是   ASP.NET   Web   窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

///   <summary>
///   设计器支持所需的方法   -   不要使用代码编辑器修改
///   此方法的内容。
///   </summary>
private   void   InitializeComponent()
{        
this.Button1.Click   +=   new   System.EventHandler(this.Button1_Click);
this.Load   +=   new   System.EventHandler(this.Page_Load);

}
#endregion

private   void   Button1_Click(object   sender,   System.EventArgs   e)
{
string   strBrowserFileName;//客户端上传文件名


string   strServerFileName;//上传文件需要保存在服务器上的完整文件名称
StringBuilder   strLabel=new   StringBuilder();//显示上传信息的字符串

strBrowserFileName=Path.GetFileName(File1.PostedFile.FileName);
strServerFileName=Path.GetDirectoryName(Server.MapPath( "WebForm1.aspx "))+ "\\ "+strBrowserFileName;
File1.PostedFile.SaveAs(strServerFileName);

//以下显示上传文件信息

strLabel.Append( "文件名称: ");
strLabel.Append(strBrowserFileName+ " <br> ");
strLabel.Append( "文件类型 ");
strLabel.Append(File1.PostedFile.ContentType+ " <br> ");
Label2.Text=strLabel.ToString();

}
}
}


[解决办法]
点按钮前你选文件了吗?
[解决办法]
有可能是没选文件,简单的小错;看看哪个值没取上``
[解决办法]
外面加上个if(File1.HasFile)判断

热点排行