asp.net mvc 接受并返回xml

 
  
1.更改web.config 文件 追加节点  
2.接口上追加  [ValidateInput(false)]属性3.创建XmlResult
 
    
      
  public class XmlResult : ActionResult
    {
        // 可被序列化的内容
        private object _Data { get; set; }

        // 构造器
        public XmlResult(object data)
        {
            _Data = data;
        }

        // 主要是重写这个方法
        public override void ExecuteResult(ControllerContext context)
        {
            if (context == null)
            {
                throw new ArgumentNullException("context");
            }

            HttpResponseBase response = context.HttpContext.Response;

            // 设置 HTTP Header 的 ContentType
            response.ContentType = "text/xml";

            if (_Data!= null)
            {
                // 序列化 Data 并写入 Response
                XmlSerializer serializer = new XmlSerializer(_Data.GetType());
                MemoryStream ms = new MemoryStream();
                serializer.Serialize(ms, _Data);
                response.Write(System.Text.Encoding.UTF8.GetString(ms.ToArray()));
            }
        }
    }
 
        [ValidateInput(false)]
        public XmlResult TitanOrderPush(string xml)
        {
            return new XmlResult(xml);
        }
 
  

你可能感兴趣的:(C#)