I wrote these lines but i have NullReferenceException. please help me how to fix it!
string FullPath = TempPath + FileName;
System.Drawing.Image Adimg = null;
Adimg = System.Drawing.Image.FromFile(MapPath(FullPath));
I put these lines in a Public bool method and TempPath is class property and FileName is input for the method.
exception Detail:
System.NullReferenceException was unhandled by user code
Message="Object reference not set to an instance of an object."
Source="System.Web"
StackTrace:
at System.Web.UI.Page.MapPath(String virtualPath)
at FileIO.HasValidAttributes(String FileName) in g:\MyProjects\ASP.net Projects\ADBridge\adengine2\App_Code\FileIO.cs:line 44
at UploadPage.<Page_Load>b__0(Object sender1, EventArgs e1) in g:\MyProjects\ASP.net Projects\ADBridge\adengine2\UploadPage.aspx.cs:line 29
at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
InnerException:
I have no Time!
Here's a few tips:
尝试改为在Server对象上调用MapPath:
HttpContext.Current.Server.MapPath(FullPath)
Reading the "Fullpath = TempPath + FileName", it seems that you are trying to pass a physical address in as a virtual address?
Is this the case? Can you give us what you are passing in as input to this function if it's not? If it is the physical path, there shouldn't be a need to use MapPath.
See here
Try this:
string fullPath = Path.Combine(TempPath, FileName);
System.Drawing.Image adimg = null;
if (!String.IsNullOrEmpty(fullPath))
{
string serverPath = HttpContext.Current.Server.MapPath(fullPath);
if (!String.IsNullOrEmpty(serverPath))
adimg = System.Drawing.Image.FromFile(serverPath);
}
Make sure that the MapPath
is giving you what you're expecting.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.