序列化之(二):soap 序列化 Binaray序列化

SoapSerilizer不能序列化泛型类型。
NameSpace:
using System.Runtime.Serialization.Formatters.Soap;
using System.Runtime.Serialization.Formatters.Binary;

//
protected void ToXML(Object objXml,bool isNameSpaces)
    {
        IFormatter formatter;
        XmlSerializer serializer 
= null;
        StreamWriter swriter 
= null;
        MemoryStream ms 
= new MemoryStream();
        
try
        {
            
//formatter = new BinaryFormatter();
            formatter = new SoapFormatter();
            
//serializer = new XmlSerializer(objXml.GetType());
            swriter = new StreamWriter(Server.MapPath("~/a.txt"));
            
if (!isNameSpaces)
            {
                formatter.Serialize(ms, objXml);
               
// serializer.Serialize(swriter, objXml, xNamesSpace);
                swriter.Write(Encoding.ASCII.GetString(ms.GetBuffer()));
            }
            
else
                serializer.Serialize(swriter, objXml);
        }
        
catch (Exception ex)
        {
            
throw new Exception(ex.ToString());
        }
        
finally
        {
            
if (swriter != null)
            {
                swriter.Close();
            }
        }
    }

posted on 2009-09-04 20:07  博览潇湘  阅读(276)  评论(0)    收藏  举报

导航