问题描述
privatestaticBaseConfigInfo_configinfo;staticBaseConfigs(){_configinfo=(BaseConfigInfo)SerializationHelper.Load(_configinfo.GetType(),System.Web.HttpContext.Current.Server.MapPath("~/APP.config"));}
publicstaticobjectLoad(Typetype,stringfilename){FileStreamfs=null;try{//openthestream...fs=newFileStream(filename,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);XmlSerializerserializer=newXmlSerializer(type);returnserializer.Deserialize(fs);}catch(Exceptionex){throwex;}finally{if(fs!=null)fs.Close();}}
BaseConfigInfo已加[Serializable]标记SerializationHelper是请问大家哪里不对?这是什么原因?
解决方案
解决方案二:
是你哪里的引用为空了。。是哪一段报错。在查看相关的对象是否为空
解决方案三:
//openthestream...fs=newFileStream(filename,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);XmlSerializerserializer=newXmlSerializer(type);这里得到的fs是不是为null啊?你看看
解决方案四:
参考这里的代码:http://www.cnblogs.com/ASPNET2008/archive/2008/12/29/1361401.html///反序列化///</summary>///<paramname="type">对象类型</param>///<paramname="filename">文件路径</param>///<returns></returns>publicstaticobjectLoad(Typetype,stringfilename){FileStreamfs=null;try{//openthestreamfs=newFileStream(filename,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);XmlSerializerserializer=newXmlSerializer(type);returnserializer.Deserialize(fs);}catch(Exceptionex){throwex;}finally{if(fs!=null)fs.Close();}}
解决方案五:
fs=newFileStream(filename,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);_configinfo=(BaseConfigInfo)SerializationHelper.Load这两个地方容易出这个问题建议第一个先检查一下文件存在不。
解决方案六:
哎,单步跟一下,先看看是那个对象未实例化!!