public override void WriteToStream(Type type, object value, System.IO.Stream writeStream, HttpContent content)
 {
     using (var writer = new StreamWriter(writeStream))
     {
         SegmentFilter segFilter = value as SegmentFilter;
         if (segFilter != null)
         {
             string postRequestUrl = BuildPostRequestUrl(segFilter);
             try
             {
                 //content.Headers.ContentLength = postRequestUrl.Length;
                 writer.WriteLine(postRequestUrl);
             }
             catch (Exception e)
             {
                 Log.WriteEntry("SegmentFilterFormatter::WriteToStream() exception.\r\n" + e.ToString());
             }
         }
     }
 }
        static string BuildPostRequestUrl(SegmentFilter filter)
        {
            var xns = new XmlSerializerNamespaces();

            xns.Add(string.Empty, string.Empty);

            StringBuilder sb = new StringBuilder();

            var xmlSettings = new XmlWriterSettings();

            xmlSettings.OmitXmlDeclaration = true;

            string postRequest = "Stylesheet=../../ScheduleEditor/Styles/ScheduleLoadData.xsl&data_in=";

            XmlSerializer x = new XmlSerializer(typeof(SegmentFilter));

            using (XmlWriter writer = XmlWriter.Create(sb, xmlSettings))
            {
                x.Serialize(writer, filter, xns);
                postRequest += WebUtility.UrlEncode(sb.ToString());
            }

            return(postRequest);
        }