关于Server.MapPath 出现未将对象引用设置到对象的实例

来源:互联网 发布:centos 网卡配置文件 编辑:程序博客网 时间:2024/05/18 01:13

此文仅在于使遇到相似问题的朋友能少走弯路

asp.net中
我用一个页面的cs文件调用一个自定义类,这个自定义类再调用System.Web.HttpContext.Current.Server.MapPath方法,于是就产生了未将对象引用设置到对象的实例的错误提示,原来以为是一个自定义类调用另一个自定义类的问题,搜索了半天没找到答案

于是想直接用自定义类调用System.Web.HttpContext.Current.Server.MapPath,发现还是不行,但是用继承了System.Web.UI.Page的cs文件去调用类里的System.Web.HttpContext.Current.Server.MapPath不会出错,终于发现
System.Web.HttpContext.Current.Server.MapPath
(System.Web.HttpContext.Current.Request.MapPath也是)要由aspx调用才行,就算类继承了System.Web.UI.Page 调用也会出错

dll文件要获得当前路径只好另想办法了,找到个

System.AppDomain.CurrentDomain.BaseDirectory 可以用,效果如D:\myweb\

更多方法参考ASP.net app_Code dll 类中获得当前路径的方法(非页面中)

#asp.net
0 0