RT 还有XmlWriter writer = null;
            try
            {
                //创建一个XMLSerializer对象
                XmlSerializer serializer = new XmlSerializer(fbs.GetType());
                //将XMLWriter对象赋值为XMLTextWriter对象
                writer = new XmlTextWriter(Response.OutputStream, System.Text.Encoding.UTF8);
                //调用序列化方法                serializer.Serialize(writer, fbs);
            }
            finally
            {
                if (writer != null)
                {
                    writer.Close();
                }
            }
Response 在webservice中不能用 为什么 

解决方案 »

  1.   

    webservice的基类没有Response 属性,因此没法用。
      

  2.   

    你不需要自己序列化成xml返回Object(必须是可序列化的)。.net framework会自动帮你序列化。非要自己序列化,可以返回string. 
      

  3.   

    你不需要自己序列化成xml返回Object(必须是可序列化的)。.net framework会自动帮你序列化。非要自己序列化,可以返回string. 
      

  4.   

    看看是否可以通过httpcontext获取response
      

  5.   


    [WebMethod]
            public string  xxx() 
            {
                IList<FBook> fbs = FBookManager.GetFBookAll();            XmlWriter writer = null;
                try
                {
                    //创建一个XMLSerializer对象
                    XmlSerializer serializer = new XmlSerializer(fbs.GetType());
                    //将XMLWriter对象赋值为XMLTextWriter对象
                    writer = new XmlTextWriter(Response.OutputStream, System.Text.Encoding.UTF8);
                    //调用序列化方法                serializer.Serialize(writer, fbs);
                }
                finally
                {
                    if (writer != null)
                    {
                        writer.Close();
                    }
                }
            }这个行不通  大哥 能说详细点么 
      

  6.   

    参考:XmlSerializer xmlSerializer = new XmlSerializer(typeof(Person));StringWriter stringWriter = new StringWriter();xmlSerializer.Serialize(stringWriter, p1);string serializedXML = stringWriter.ToString();返回string就可以了
      

  7.   

    报这个错误怎么解决呢生成 XML 文档时出错。 ---> System.InvalidOperationException: 不应是类型 System.IO.StringWriter。使用 XmlInclude 或 SoapInclude 属性静态指定非已知的类型。
      

  8.   

    以String类型的方式返回XML就可以啦
      

  9.   

    List<FBook> fbs = FBookManager.GetFBookAll();
                XmlSerializer xmlSerializer = new XmlSerializer(fbs.GetType());            StringWriter stringWriter = new StringWriter();            xmlSerializer.Serialize(stringWriter, fbs);            string serializedXML = stringWriter.ToString();            return stringWriter;如果是string类型就会这样  
    无法将类型“System.IO.StringWriter”隐式转换为“string”
      

  10.   

    string serializedXML = stringWriter.ToString();return stringWriter;返回值写错了