public override void VisitMemberNode(MemberNode node)
        {
            if (node.DifferenceDecoration == DifferenceDecoration.NoDifferences)
            {
                return;
            }

            xmlWriter.WriteStartElement("Member");
            xmlWriter.WriteAttributeString("Name", node.Name);
            xmlWriter.WriteAttributeString("DiffType", node.DifferenceDecoration.ToString());

            if (includeSourceCode)
            {
                var oldSource = node.OldSource;
                if (!string.IsNullOrEmpty(oldSource))
                {
                    xmlWriter.WriteStartElement("Source");
                    xmlWriter.WriteAttributeString("Type", "Old");
                    xmlWriter.WriteCData(string.Concat(Environment.NewLine, oldSource, Environment.NewLine));
                    xmlWriter.WriteEndElement();
                }

                var newSource = node.NewSource;
                if (!string.IsNullOrEmpty(newSource))
                {
                    xmlWriter.WriteStartElement("Source");
                    xmlWriter.WriteAttributeString("Type", "New");
                    xmlWriter.WriteCData(string.Concat(Environment.NewLine, newSource, Environment.NewLine));
                    xmlWriter.WriteEndElement();
                }
            }

            xmlWriter.WriteEndElement();
        }
Exemplo n.º 2
0
        private static void CreateXML(string Path)
        {
            string path = Path + "/test1.xml";//创建或者覆盖文件

            Console.WriteLine(path);
            XmlTextWriter xml = new XmlTextWriter(path, Encoding.UTF8);

            xml.Formatting = Formatting.Indented;
            xml.WriteStartDocument();
            xml.WriteStartElement("web-app");     //创建节点

            xml.WriteStartElement("servlet");     //创建节点

            xml.WriteStartElement("ServletName"); //创建节点
            xml.WriteCData("DispatchServlet");    //写入数据
            xml.WriteEndElement();                //结束

            xml.WriteStartElement("电话");          //创建节点
            xml.WriteCData("134000000");
            xml.WriteEndElement();                //结束

            xml.WriteEndElement();
            xml.WriteEndElement();

            xml.WriteEndDocument();
            xml.Flush();//刷新
            xml.Close();
        }
Exemplo n.º 3
0
        private void WriteCData(string text)
        {
            int start = 0;

            while (true)
            {
                int illegal = text.IndexOf("]]>", start);
                if (illegal < 0)
                {
                    break;
                }
                xmlWriter.WriteCData(text.Substring(start, illegal - start + 2));
                start = illegal + 2;
                if (start >= text.Length)
                {
                    return;
                }
            }

            if (start > 0)
            {
                xmlWriter.WriteCData(text.Substring(start));
            }
            else
            {
                xmlWriter.WriteCData(text);
            }
        }
Exemplo n.º 4
0
        private void SaveSettings()
        {
            string ExtendName = "";

            if (radioButton1.Checked == true)
            {
                ExtendName = "MP4";
            }
            if (radioButton2.Checked == true)
            {
                ExtendName = "MKV";
            }
            if (radioButton4.Checked == true)
            {
                ExtendName = "FLV";
            }


            XmlTextWriter xml = new XmlTextWriter(@System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments) + "\\M3u8_Downloader_Settings.xml", Encoding.UTF8);

            xml.Formatting = Formatting.Indented;
            xml.WriteStartDocument();
            xml.WriteStartElement("Settings");

            xml.WriteStartElement("DownPath"); xml.WriteCData(textBox_DownloadPath.Text); xml.WriteEndElement();
            xml.WriteStartElement("ExtendName"); xml.WriteCData(ExtendName); xml.WriteEndElement();

            xml.WriteEndElement();
            xml.WriteEndDocument();
            xml.Flush();
            xml.Close();
        }
Exemplo n.º 5
0
        private void GetCategoryRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
        {
            try
            {
                string             noImageUrl = string.Empty;
                StoreSettingConfig ssc        = new StoreSettingConfig();
                noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                       aspxCommonObj.PortalID, aspxCommonObj.CultureName);
                string[] path      = pageURL.Split('?');
                string   pagepath  = path[0];
                string   x         = HttpContext.Current.Request.ApplicationPath;
                string   authority = HttpContext.Current.Request.Url.Authority;
                string   pageUrl   = authority + x;
                List <RssFeedCategory> categoryRss = AspxRssFeedProvider.GetCategoryRssContent(aspxCommonObj, rssOption, count);
                if (categoryRss.Count > 0)
                {
                    foreach (RssFeedCategory rssItemData in categoryRss)
                    {
                        string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + rssItemData.ImagePath;
                        rssXml.WriteStartElement("item");
                        rssXml.WriteElementString("title", rssItemData.CategoryName);
                        rssXml.WriteElementString("link",
                                                  "http://" + pageUrl + "/service/" + rssItemData.CategoryName +
                                                  SageFrameSettingKeys.PageExtension);
                        rssXml.WriteStartElement("description");
                        if (rssItemData.ImagePath == "")
                        {
                            imagePath = noImageUrl;
                        }
                        var description = "";
                        description = "<div><a href=http://" + pageUrl + "/service/" + rssItemData.CategoryName +
                                      SageFrameSettingKeys.PageExtension + "><img alt=" +
                                      rssItemData.CategoryName + " src=http://" + pageUrl + "/" +
                                      imagePath.Replace("uploads/Small", "uploads/Small") + " /> </a></div>";
                        description += "</br>" + HttpUtility.HtmlDecode(rssItemData.ShortDescription);
                        rssXml.WriteCData(description);
                        rssXml.WriteEndElement();

                        rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                        rssXml.WriteEndElement();
                    }
                }
                else
                {
                    rssXml.WriteStartElement("item");
                    rssXml.WriteElementString("title", "");
                    rssXml.WriteElementString("link", "");
                    rssXml.WriteStartElement("description");
                    var description = "";
                    description = "<div><h2><span>This store has no category found!</span></h2></div>";
                    rssXml.WriteCData(description);
                    rssXml.WriteEndElement();
                    rssXml.WriteEndElement();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 6
0
 private XmlTextWriter SetMakeElement(XmlTextWriter writer, string strID, string strValue, string strCDataYN)
 {
     if (strCDataYN == "Y")
     {
         writer.WriteStartElement(strID.ToString());
         writer.WriteCData(strValue.ToString());
         writer.WriteEndElement();
     }
     else if (strCDataYN == "M" && strID.Length >= 6)
     {
         if (strID.Substring(0, 6) == "CDATA_")
         {
             writer.WriteStartElement(strID.ToString());
             writer.WriteCData(strValue.ToString());
             writer.WriteEndElement();
         }
         else
         {
             writer.WriteElementString(strID.ToString(), strValue.ToString());
         }
     }
     else
     {
         writer.WriteElementString(strID.ToString(), strValue.ToString());
     }
     return(writer);
 }
Exemplo n.º 7
0
        static void WriteXml(Stream output, DataTable dataTable, string columnName)
        {
            using (XmlTextWriter writer = new XmlTextWriter(output, Encoding.UTF8))
            {
                writer.Formatting = Formatting.Indented;
                writer.WriteStartDocument();
                writer.WriteStartElement("resources");
                foreach (DataRow row in dataTable.Rows)
                {
                    string key   = (string)row["key"];
                    string type  = (string)row["type"];
                    string value = row[columnName] is DBNull ? null : (string)row[columnName];

                    if (type.EndsWith("-array"))
                    {
                        if (!string.IsNullOrEmpty(value))
                        {
                            writer.WriteStartElement(type);
                            writer.WriteAttributeString("name", key);

                            string[] values = StringSpliter.Split(value, CSV_SPECIAL_CHARS);
                            foreach (string v in values)
                            {
                                writer.WriteStartElement("item");
                                if (!string.IsNullOrEmpty(v) & v.IndexOfAny(XML_SPECIAL_CHARS) != -1)
                                {
                                    writer.WriteCData(v);
                                }
                                else
                                {
                                    writer.WriteValue(v);
                                }
                                writer.WriteEndElement();
                            }
                            writer.WriteEndElement();
                        }
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(value))
                        {
                            writer.WriteStartElement(type);
                            writer.WriteAttributeString("name", key);
                            if (value.IndexOfAny(XML_SPECIAL_CHARS) != -1)
                            {
                                writer.WriteCData(value);
                            }
                            else
                            {
                                writer.WriteValue(value);
                            }
                            writer.WriteEndElement();
                        }
                    }
                }
                writer.WriteEndElement();
                writer.WriteEndDocument();
            }
        }
Exemplo n.º 8
0
        private void WriteDocumentationText([NotNull] XmlTextWriter output, [NotNull] Item item)
        {
            Debug.ArgumentNotNull(output, nameof(output));
            Debug.ArgumentNotNull(item, nameof(item));

            var hasElements = false;

            foreach (var language in item.Languages)
            {
                var i = item.Database.GetItem(item.ID, language);

                var title    = i["Title"];
                var subtitle = i["Subtitle"];
                var text     = i["Text"];
                if (string.IsNullOrEmpty(title) && string.IsNullOrEmpty(subtitle) && string.IsNullOrEmpty(text))
                {
                    continue;
                }

                if (!hasElements)
                {
                    output.WriteStartElement("text");
                    output.WriteAttributeString("id", item.ID.ToString());

                    hasElements = true;
                }

                output.WriteStartElement("lang");
                output.WriteAttributeString("name", language.Name);

                if (!string.IsNullOrEmpty(title))
                {
                    output.WriteStartElement("title");
                    output.WriteCData(title);
                    output.WriteEndElement();
                }

                if (!string.IsNullOrEmpty(subtitle))
                {
                    output.WriteStartElement("subtitle");
                    output.WriteCData(subtitle);
                    output.WriteEndElement();
                }

                if (!string.IsNullOrEmpty(text))
                {
                    output.WriteStartElement("text");
                    output.WriteCData(text);
                    output.WriteEndElement();
                }

                output.WriteEndElement();
            }

            if (hasElements)
            {
                output.WriteEndElement();
            }
        }
Exemplo n.º 9
0
        private void WriteViewRendering([NotNull] XmlTextWriter output, [NotNull] Item item)
        {
            Debug.ArgumentNotNull(output, nameof(output));
            Debug.ArgumentNotNull(item, nameof(item));

            var hasElements = false;

            foreach (var language in item.Languages)
            {
                var i = item.Database.GetItem(item.ID, language);

                var shortHelp   = i.Help.ToolTip;
                var longHelp    = i.Help.Text;
                var displayName = i[FieldIDs.DisplayName];

                if (string.IsNullOrEmpty(shortHelp) && string.IsNullOrEmpty(longHelp) && string.IsNullOrEmpty(displayName))
                {
                    continue;
                }

                if (!hasElements)
                {
                    output.WriteStartElement("viewrendering");
                    output.WriteAttributeString("id", item.ID.ToString());
                    hasElements = true;
                }

                output.WriteStartElement("lang");
                output.WriteAttributeString("name", language.Name);

                if (!string.IsNullOrEmpty(shortHelp))
                {
                    output.WriteStartElement("short");
                    output.WriteCData(shortHelp);
                    output.WriteEndElement();
                }

                if (!string.IsNullOrEmpty(longHelp))
                {
                    output.WriteStartElement("long");
                    output.WriteCData(longHelp);
                    output.WriteEndElement();
                }

                if (!string.IsNullOrEmpty(displayName))
                {
                    output.WriteStartElement("displayname");
                    output.WriteCData(displayName);
                    output.WriteEndElement();
                }

                output.WriteEndElement();
            }

            if (hasElements)
            {
                output.WriteEndElement();
            }
        }
Exemplo n.º 10
0
 private void WriteReasonElement(TestResult result)
 {
     xmlWriter.WriteStartElement("reason");
     xmlWriter.WriteStartElement("message");
     xmlWriter.WriteCData(result.Message);
     xmlWriter.WriteEndElement();
     xmlWriter.WriteEndElement();
 }
Exemplo n.º 11
0
        public void Visit(TestCaseResult caseResult)
        {
            xmlWriter.WriteStartElement("test-case");
            xmlWriter.WriteAttributeString("name", caseResult.Name);

            if (caseResult.Description != null)
            {
                xmlWriter.WriteAttributeString("description", caseResult.Description);
            }

            xmlWriter.WriteAttributeString("executed", caseResult.Executed.ToString());
            if (caseResult.Executed)
            {
                xmlWriter.WriteAttributeString("success", caseResult.IsSuccess.ToString());

                xmlWriter.WriteAttributeString("time", caseResult.Time.ToString("#####0.000", NumberFormatInfo.InvariantInfo));

                xmlWriter.WriteAttributeString("asserts", caseResult.AssertCount.ToString());
                WriteCategories(caseResult);
                WriteProperties(caseResult);
                if (caseResult.IsFailure)
                {
                    if (caseResult.IsFailure)
                    {
                        xmlWriter.WriteStartElement("failure");
                    }
                    else
                    {
                        xmlWriter.WriteStartElement("error");
                    }

                    xmlWriter.WriteStartElement("message");
                    xmlWriter.WriteCData(EncodeCData(caseResult.Message));
                    xmlWriter.WriteEndElement();

                    xmlWriter.WriteStartElement("stack-trace");
                    if (caseResult.StackTrace != null)
                    {
                        xmlWriter.WriteCData(EncodeCData(StackTraceFilter.Filter(caseResult.StackTrace)));
                    }
                    xmlWriter.WriteEndElement();

                    xmlWriter.WriteEndElement();
                }
            }
            else
            {
                WriteCategories(caseResult);
//				WriteProperties(caseResult);
                xmlWriter.WriteStartElement("reason");
                xmlWriter.WriteStartElement("message");
                xmlWriter.WriteCData(caseResult.Message);
                xmlWriter.WriteEndElement();
                xmlWriter.WriteEndElement();
            }

            xmlWriter.WriteEndElement();
        }
Exemplo n.º 12
0
        /// <summary>
        /// write signal info to XML file
        /// </summary>
        /// <param name="info">the signal info to write</param>
        /// <returns>0-success,1-fail</returns>
        public static int writeSignalToXml(string[] info)
        {
            string no_ID = Convert.ToString(DateTime.Now);

            try
            {
                //创建文件
                if (!File.Exists(signalFilePath))
                {
                    XmlTextWriter writer = new XmlTextWriter(signalFilePath, null);
                    writer.Formatting = Formatting.Indented;

                    writer.WriteStartElement("signalInfo");
                    writer.WriteStartElement("fileInfo");
                    writer.WriteStartElement("creatTime");
                    writer.WriteCData(Convert.ToString(DateTime.Now));
                    writer.WriteEndElement();
                    writer.WriteStartElement("lastModify");
                    writer.WriteCData(Convert.ToString(DateTime.Now));
                    writer.WriteEndElement();
                    writer.WriteEndElement();

                    writer.WriteFullEndElement();
                    writer.Close();
                }
                //Modify
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load(signalFilePath);
                int      i;
                string[] dataName = { "chann", "rs", "dBm", "MCC", "MNC", "LAC", "cell", "NCC", "BCC", "PWR", "RXLev", "C1" };

                //记录修改时间
                XmlNode time = xmlDoc.SelectSingleNode("signalInfo/fileInfo/lastModify");
                time.InnerText = @"<![CDATA[ " + Convert.ToString(DateTime.Now) + " ]]>";

                //追加记录
                XmlNode    root   = xmlDoc.SelectSingleNode("signalInfo");
                XmlElement newEle = xmlDoc.CreateElement("rawData");;

                newEle.SetAttribute("ID", Convert.ToString(no_ID));
                for (i = 0; i <= signalDetail.GetLength(0); i++)
                {
                    XmlElement newInfo = xmlDoc.CreateElement(dataName[i]);
                    newInfo.InnerText = info[i];
                    newEle.AppendChild(newInfo);
                    root.AppendChild(newEle);
                }
                xmlDoc.Save(signalFilePath);

                return(0);
            }
            catch (Exception)
            {
                return(1);
            }
        }
Exemplo n.º 13
0
        public void Save(RazorDocument document, Stream stream)
        {
            var writer = new XmlTextWriter(stream, Encoding)
            {
                Formatting = Formatting.Indented
            };

            writer.WriteStartElement("RazorDocument");

            writer.WriteStartElement("Metadata");
            foreach (var datum in document.Metadata)
            {
                writer.WriteStartElement(datum.Key);
                writer.WriteString(datum.Value);
                writer.WriteEndElement();
            }
            writer.WriteEndElement();

            writer.WriteStartElement("References");
            foreach (var reference in document.References ?? Enumerable.Empty <string>())
            {
                writer.WriteElementString("Reference", reference);
            }
            writer.WriteEndElement();

            var providerName    = (string)new ModelProviderName(document.ModelProvider);
            var serializedModel = document.ModelProvider.Serialize();

            writer.WriteStartElement("Model");
            if (!string.IsNullOrWhiteSpace(providerName))
            {
                writer.WriteAttributeString("Provider", providerName);
            }
            writer.WriteCData(serializedModel);
            writer.WriteEndElement();

            writer.WriteStartElement("Template");
            if (!string.IsNullOrWhiteSpace(document.TemplateBaseClassName))
            {
                writer.WriteAttributeString("BaseClass", document.TemplateBaseClassName);
            }
            writer.WriteCData(document.Template);
            writer.WriteEndElement();


            writer.WriteEndElement();

            writer.Flush();
        }
Exemplo n.º 14
0
        static void Main(string[] args)
        {
            // some output to write to
            XmlTextWriter xtw = new XmlTextWriter(@"c:\temp\CDataTest.xml", null);

            // start at 'songs' element
            xtw.WriteStartElement("songs");
            xtw.WriteCData("<div class='ThumbContainer'>Some text here</div>");
            xtw.WriteStartElement("songsTitle");
            xtw.WriteCData("sometexthtml here");
            xtw.WriteEndElement();                      // end "songTitle"
            xtw.WriteEndElement();                      // end "songs"
            xtw.Flush();                                // clean up
            xtw.Close();
        }
Exemplo n.º 15
0
/// <summary>
/// Serialize
/// </summary>
/// <returns></returns>

        public string Serialize()
        {
            XmlMemoryStreamTextWriter mstw = new XmlMemoryStreamTextWriter();

            mstw.Writer.Formatting = Formatting.Indented;
            XmlTextWriter tw = mstw.Writer;

            tw.WriteStartElement("UserObject");

            tw.WriteAttributeString("Id", Id.ToString());
            tw.WriteAttributeString("Type", Type.ToString());
            tw.WriteAttributeString("Owner", Owner);
            tw.WriteAttributeString("Name", Name);
            XmlUtil.WriteAttributeIfDefined(tw, "Description", Description);
            tw.WriteAttributeString("ParentFolder", ParentFolder);
            tw.WriteAttributeString("ParentFolderType", ParentFolderType.ToString());
            tw.WriteAttributeString("AccessLevel", AccessLevel.ToString());
            XmlUtil.WriteAttributeIfDefined(tw, "ACL", ACL);
            tw.WriteAttributeString("Count", Count.ToString());
            if (CreationDateTime != DateTime.MinValue)
            {
                tw.WriteAttributeString("CreationDateTime", DateTimeUS.ToString(CreationDateTime));
            }
            if (UpdateDateTime != DateTime.MinValue)
            {
                tw.WriteAttributeString("UpdateDateTime", DateTimeUS.ToString(UpdateDateTime));
            }

            if (!Lex.IsNullOrEmpty(Content))
            {
                tw.WriteStartElement("Content");
                string cdataClose = "]]>";
                string content    = Content;
                while (Lex.Contains(content, cdataClose))
                {
                    int p = Lex.IndexOf(content, cdataClose);
                    tw.WriteCData(content.Substring(0, p + 2));
                    content = content.Substring(p + 2);
                }
                tw.WriteCData(content);
                tw.WriteEndElement();                 // end of DataRows
            }

            tw.WriteEndElement();
            string xml = mstw.GetXmlAndClose();

            return(xml);
        }
Exemplo n.º 16
0
        private void RecurseXmlTasks(TaskItem tasks, XmlTextWriter xtw)
        {
            for (int i = 0; i < tasks.Count; i++)
            {
                TaskItem task = tasks[i];
                xtw.WriteStartElement(NodeTypes.task.ToString());

                xtw.WriteStartElement(NodeTypes.task_name.ToString());
                xtw.WriteString(task.Name);
                xtw.WriteEndElement();

                xtw.WriteStartElement(NodeTypes.task_folder.ToString());
                xtw.WriteString(task.Folder);
                xtw.WriteEndElement();

                xtw.WriteStartElement(NodeTypes.task_series.ToString());
                task.TaskSeriesItem.WriteXmlToSave(xtw);
                xtw.WriteEndElement();

                xtw.WriteStartElement(NodeTypes.task_note.ToString());
                xtw.WriteCData(System.Security.SecurityElement.Escape(task.Note));
                xtw.WriteEndElement();

                Console.WriteLine(task.Name);
                RecurseXmlTasks(task, xtw);

                xtw.WriteEndElement();
            }
        }
 protected virtual void OnWritingDetail(XmlTextWriter xtw, N2.Details.ContentDetail detail)
 {
     xtw.WriteStartElement("detail");
     xtw.WriteAttributeString("name", detail.Name);
     xtw.WriteAttributeString("typeName", SerializationUtility.GetTypeAndAssemblyName(detail.ValueType));
     if (detail.ValueType == typeof(object))
     {
         BinaryFormatter bf     = new BinaryFormatter();
         MemoryStream    stream = new MemoryStream();
         bf.Serialize(stream, detail.Value);
         xtw.WriteString(Convert.ToBase64String(stream.ToArray()));
     }
     else if (detail.ValueType == typeof(ContentItem))
     {
         xtw.WriteString(detail.LinkedItem.ID.ToString());
     }
     else if (detail.Value == typeof(string))
     {
         xtw.WriteCData(detail.StringValue);
     }
     else
     {
         xtw.WriteString(detail.Value.ToString());
     }
     xtw.WriteEndElement();
 }
Exemplo n.º 18
0
 public static List <Dictionary <string, object> > Save(string filename, List <Dictionary <string, object> > dicList, bool apppend)
 {
     if (apppend)
     {
         List <Dictionary <string, object> > preDic = ReadList(filename);
         dicList.InsertRange(0, preDic);
     }
     using (XmlTextWriter xmlWriter = new XmlTextWriter(filename, Encoding.GetEncoding("utf-8")))
     {
         xmlWriter.WriteStartDocument();
         xmlWriter.Formatting = Formatting.Indented;
         // 写入根元素
         xmlWriter.WriteStartElement("______root");
         foreach (Dictionary <string, object> dicItem in dicList)
         {
             xmlWriter.WriteStartElement("______config");
             foreach (KeyValuePair <string, object> item in dicItem)
             {
                 // 写入第一个元素
                 xmlWriter.WriteStartElement(item.Key);
                 xmlWriter.WriteCData(item.Value.ToString());
                 xmlWriter.WriteEndElement();
             }
             xmlWriter.WriteEndElement();
         }
         xmlWriter.WriteEndElement();
         xmlWriter.Close();
     }
     return(dicList);
 }
Exemplo n.º 19
0
        /// <summary>
        /// Stores the given map in the given output stream using
        /// the tIDE format
        /// </summary>
        /// <param name="map">Map to store</param>
        /// <param name="stream">Output stream</param>
        public void Store(Map map, Stream stream)
        {
#if WINDOWS
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, Encoding.UTF8);
            xmlWriter.Formatting = Formatting.Indented;

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("Map");
            xmlWriter.WriteAttributeString("Id", map.Id);

            xmlWriter.WriteStartElement("Description");
            xmlWriter.WriteCData(map.Description);
            xmlWriter.WriteEndElement();

            StoreTileSheets(map.TileSheets, xmlWriter);

            StoreLayers(map.Layers, xmlWriter);

            StoreProperties(map, xmlWriter);

            xmlWriter.WriteEndElement();

            xmlWriter.Flush();
#else
            throw new NotSupportedException();
#endif
        }
Exemplo n.º 20
0
        /// <summary>
        /// Adds a single item to the XmlTextWriter supplied
        /// </summary>
        /// <param name="writer">The XmlTextWriter to be written to</param>
        /// <param name="sItemTitle">The title of the RSS item</param>
        /// <param name="sItemLink">The URL of the RSS item</param>
        /// <param name="sItemDescription">The RSS item text itself</param>
        /// <param name="sPubDate"></param>
        /// <param name="bDescAsCdata">Write description as CDATA</param>
        /// <returns>The XmlTextWriter with the item info written to it</returns>
        public XmlTextWriter AddRssItem(XmlTextWriter writer, string sItemTitle, string sItemLink, string sItemDescription, DateTime sPubDate, bool bDescAsCdata)
        {
            writer.WriteStartElement("item");
            writer.WriteElementString("title", sItemTitle);
            writer.WriteElementString("link", sItemLink);

            if (bDescAsCdata)
            {
                // Now we can write the description as CDATA to support html content.
                // We find this used quite often in aggregators

                writer.WriteStartElement("description");
                writer.WriteCData(sItemDescription);
                writer.WriteEndElement();
            }
            else
            {
                writer.WriteElementString("description", sItemDescription);
            }

            writer.WriteElementString("pubDate", sPubDate.ToString("r"));
            writer.WriteEndElement();

            return(writer);
        }
Exemplo n.º 21
0
        private void WriteValue(XmlTextWriter writer, int depth, IDictionary <string, byte[]> baggage, Type[] genericArguments, dynamic i)
        {
            if (genericArguments[1] == typeof(string))
            {
                writer.WriteStartElement("value");
                writer.WriteCData(i.Value);
                writer.WriteEndElement();
            }
            else if (WriteAsAttribute(genericArguments[1]))
            {
                writer.WriteAttributeString("value", ToString(genericArguments[1], i.Value));
            }
            else if (genericArguments[1].IsArray && genericArguments[1].GetElementType() == typeof(byte))
            {
                byte[] data = (byte[])i.Value;

                var baggageid = Guid.NewGuid();
                var uri       = $"baggage://{baggageid}";
                baggage.Add(uri, data);

                writer.WriteStartElement("value");
                writer.WriteAttributeString("uri", uri);
                //writer.WriteCData(System.Convert.ToBase64String(data));
                writer.WriteEndElement();
            }
            else
            {
                writer.WriteStartElement("value");
                WriteObject(null, i.Value, writer, depth + 1, baggage);
                writer.WriteEndElement();
            }
        }
Exemplo n.º 22
0
        private void WriteXmlElement(TraceRecord rec)
        {
            using (Stream xmlFile = new FileStream(@"c:\temp\WebAPILog.xml", FileMode.Append))
            {
                using (XmlTextWriter writer = new XmlTextWriter(xmlFile, Encoding.UTF8))
                {
                    writer.Formatting = Formatting.Indented;
                    writer.WriteStartElement("trace");
                    writer.WriteElementString("timestamp", rec.Timestamp.ToString());
                    writer.WriteElementString("operation", rec.Operation);
                    writer.WriteElementString("user", rec.Operator);

                    if (!String.IsNullOrWhiteSpace(rec.Message))
                    {
                        writer.WriteStartElement("message");
                        writer.WriteCData(rec.Message);
                        writer.WriteEndElement();
                    }

                    writer.WriteElementString("category", rec.Category);
                    writer.WriteEndElement();
                    writer.WriteString(Environment.NewLine);
                    writer.Flush();
                }
            }
        }
Exemplo n.º 23
0
        public string Execute([NotNull] string contextName)
        {
            Assert.ArgumentNotNull(contextName, nameof(contextName));

            var writer = new StringWriter();
            var output = new XmlTextWriter(writer);

            output.WriteStartElement("validations");

            TempFolder.EnsureFolder();
            var fileName     = Path.Combine(FileUtil.MapPath(TempFolder.Folder), contextName + "_validation.xml");
            var tempFileName = fileName + ".tmp";

            if (FileUtil.Exists(tempFileName))
            {
                output.WriteAttributeString("generating", "true");
            }

            if (FileUtil.Exists(fileName))
            {
                var text = FileUtil.ReadUTF8File(fileName);

                output.WriteCData(text);
            }

            output.WriteEndElement();
            output.Flush();

            return(writer.ToString());
        }
Exemplo n.º 24
0
 public static void Save(Stream stream, IEnumerable <ConfigurationSection> sections)
 {
     using (var writer = new XmlTextWriter(stream, Encoding.Default))
     {
         writer.Formatting = Formatting.Indented;
         writer.WriteStartDocument();
         writer.WriteStartElement(Publication.Product);
         foreach (var section in sections)
         {
             var elements = section.Elements.Where(
                 element => element.IsModified
                 ).ToArray();
             if (!elements.Any())
             {
                 continue;
             }
             Logger.Write(typeof(Serializer), LogLevel.Trace, "Saving configuration section: \"{0}\".", section.Id);
             writer.WriteStartElement(nameof(ConfigurationSection));
             writer.WriteAttributeString(nameof(section.Id), section.Id);
             foreach (var element in elements)
             {
                 Logger.Write(typeof(Serializer), LogLevel.Trace, "Saving configuration element: \"{0}\".", element.Id);
                 writer.WriteStartElement(nameof(ConfigurationElement));
                 writer.WriteAttributeString(nameof(ConfigurationElement.Id), element.Id);
                 writer.WriteCData(element.GetPersistentValue());
                 writer.WriteEndElement();
             }
             writer.WriteEndElement();
         }
         writer.WriteEndElement();
         writer.WriteEndDocument();
     }
 }
Exemplo n.º 25
0
        private string ToXml(Dictionary <string, string> param)
        {
            MemoryStream  ms  = new MemoryStream();
            XmlTextWriter xml = new XmlTextWriter(ms, Encoding.UTF8);

            try {
                xml.Formatting = Formatting.Indented;
                xml.WriteStartDocument();
                xml.WriteStartElement("xml");
                foreach (KeyValuePair <string, string> dic in param)
                {
                    xml.WriteStartElement(dic.Key);
                    xml.WriteCData(dic.Value);
                    xml.WriteEndElement();
                }
                xml.WriteEndElement();
                xml.WriteEndDocument();
                xml.Flush();

                //byte[] xmlBytes = new byte[ms.Length];
                //ms.Read(xmlBytes, 0, (int)ms.Length);
                var xmlBytes = ms.ToArray();
                return(Encoding.UTF8.GetString(xmlBytes));
            }
            catch (Exception) {
                Log.Error("orion", "转换XML失败");
            }
            finally {
                xml.Close();
                ms.Close();
            }
            return(null);
        }
        static void WriteAppointments(XmlTextWriter xmlWriter)
        {
            string[] rooms = GetWatchingRooms();

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("Appointments");
            xmlWriter.WriteElementString("ImportTime", DateTime.Now.ToString());

            isError = false;

            foreach (string room in rooms)
            {
                try
                {
                    data.ScheduleData roomAppointments = ExchangeHelper.LoadResouceCallendar(room);
                    WriteRoomXml(roomAppointments, xmlWriter);
                }
                catch (Exception ex)
                {
                    isError = true; // Set error flag to prevent caching
                    Trace.TraceError("Error writing appointments for room {0} ErrMsg: {1}", room, ex.Message);
                    xmlWriter.WriteStartElement("Error");
                    xmlWriter.WriteAttributeString("Room", room);
                    xmlWriter.WriteStartElement("Message", ex.Message);
                    xmlWriter.WriteStartElement("Trace");
                    xmlWriter.WriteCData(ex.StackTrace);
                    xmlWriter.WriteEndElement();
                    xmlWriter.WriteEndElement();
                }
            }

            xmlWriter.WriteEndElement();
            xmlWriter.WriteEndDocument();
        }
Exemplo n.º 27
0
        public static void WriteCustomerXml(XmlTextWriter writer, CustomerInfo customer)
        {
            writer.WriteStartElement(customerTag);

            writer.WriteElementString(idTag, customer.ID.ToString());

            writer.WriteStartElement(LastNameTag);
            writer.WriteCData(customer.LastName);
            writer.WriteEndElement();

            writer.WriteStartElement(FirstNameTag);
            writer.WriteCData(customer.FirstName);
            writer.WriteEndElement();

            writer.WriteEndElement();
        }
Exemplo n.º 28
0
        public static void SaveMod(string filename, List <XMLdata> indata)
        {
            string filepath = StaticVars.DIRCN + filename;

            XmlTextWriter xml = new XmlTextWriter(filepath, Encoding.UTF8)
            {
                Formatting = Formatting.Indented
            };

            xml.WriteStartDocument();
            xml.WriteStartElement("root");
            xml.WriteStartElement("language");
            xml.WriteAttributeString("id", "english");
            foreach (XMLdata data in indata)
            {
                xml.WriteStartElement("entry");

                xml.WriteAttributeString("id", data.LabelName);

                xml.WriteCData(data.ContentDest);

                xml.WriteEndElement();
            }
            xml.WriteEndElement();
            xml.WriteEndElement();
            xml.WriteEndDocument();
            xml.Flush();
            xml.Close();
        }
Exemplo n.º 29
0
        /// <summary>
        /// Appends details about this change to the XML file
        /// </summary>
        public void ExportToXml(XmlTextWriter xmlWriter, StringDictionary nameMap)
        {
            string displayName;

            xmlWriter.WriteStartElement("entry");

            xmlWriter.WriteStartElement("date");
            string outputDateFormat = "yyyy'-'MM'-'dd";

            xmlWriter.WriteString(date.ToString(outputDateFormat));
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("time");
            string outputTimeFormat = "HH':'mm";

            xmlWriter.WriteString(date.ToString(outputTimeFormat));
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("author");
            // Check if we have the authors real name
            if (nameMap.ContainsKey(author))
            {
                displayName = nameMap[author];
            }
            else
            {
                // no - just display the authors user ID
                displayName = author;
            }
            xmlWriter.WriteCData(displayName);
            xmlWriter.WriteEndElement();

            foreach (object o in fileRevisions)
            {
                FileRevision fileRevision = (FileRevision)o;
                fileRevision.ExportToXml(xmlWriter);
            }

            if (comment != null && comment.Length != 0)
            {
                xmlWriter.WriteStartElement("msg");
                xmlWriter.WriteCData(comment);
                xmlWriter.WriteEndElement();
            }

            xmlWriter.WriteEndElement();    // "file"
        }
Exemplo n.º 30
0
 protected override void WriteChildren(XmlTextWriter writer)
 {
     if (!string.IsNullOrEmpty(Content))
     {
         // Always put the script in a CDATA tag
         writer.WriteCData(this.Content);
     }
 }
 private void GetItemRssFeedContents(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL,int count)
 {
     try
     {
         string noImageUrl = string.Empty;
         StoreSettingConfig ssc = new StoreSettingConfig();
         noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                aspxCommonObj.PortalID, aspxCommonObj.CultureName);
         string[] path = pageURL.Split('?');
         string pagepath = path[0];
         string x = HttpContext.Current.Request.ApplicationPath;
         string authority = HttpContext.Current.Request.Url.Authority;
         string pageUrl = authority + x;
         ServiceItemController sic = new ServiceItemController();
         List<ServiceItemRss> itemRss = sic.GetServiceTypeRssFeedContent(aspxCommonObj, count);
         if (itemRss.Count > 0)
         {
             foreach (ServiceItemRss rssItemData in itemRss)
             {
                 string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + rssItemData.ImagePath;
                 if (rssItemData.ImagePath != "")
                 {
                     //Resize Image Dynamically
                     InterceptImageController.ImageBuilder(rssItemData.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);
                 }
                 rssXml.WriteStartElement("item");
                 rssXml.WriteElementString("title", rssItemData.ServiceName);
                 rssXml.WriteElementString("link",
                                           "http://" + pageUrl + "/service/" + rssItemData.ServiceName +
                                           SageFrameSettingKeys.PageExtension);
                 rssXml.WriteStartElement("description");
                 var description = "";
                 if (rssItemData.ImagePath == "")
                 {
                     imagePath = noImageUrl;
                 }
                 description = "<div><a href=http://" + pageUrl + "/service/" + rssItemData.ServiceName +
                          SageFrameSettingKeys.PageExtension + "><img src=http://" + pageUrl + "/" +
                          imagePath.Replace("uploads", "uploads/Small") + " alt=" + rssItemData.ServiceName + " /> </a></div>";
                 description += "</br>" + HttpUtility.HtmlDecode(rssItemData.ShortDescription);
                 rssXml.WriteCData(description);
                 rssXml.WriteEndElement();
                 rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                 rssXml.WriteEndElement();
             }
         }
         else
         {
             rssXml.WriteStartElement("item");
             rssXml.WriteElementString("title", "");
             rssXml.WriteElementString("link", "");
             rssXml.WriteStartElement("description");
             var description = "";
             description = "<div><h2><span>This store has no items listed yet!</span></h2></div>";
             rssXml.WriteCData(description);
             rssXml.WriteEndElement();
             rssXml.WriteEndElement();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
    private void GetNewCustomerRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
            List<RssFeedNewCustomer> categoryRss = AspxRssFeedProvider.GetNewCustomerRssFeedContent(aspxCommonObj, rssOption, count);
            foreach (RssFeedNewCustomer rssItemData in categoryRss)
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", rssItemData.UserName);
                rssXml.WriteElementString("link", "");
                rssXml.WriteStartElement("description");

                var description = "<div><ul>";
                description += "<li><h2>UserName: "******"</h2></li>";
                description += "<li><h2>Customer Name: " + rssItemData.CustomerName + "</h2></li>";
                description += "<li><h2>Customer Email: " + rssItemData.Email + "</h2></li>";
                description += "<li><h2>Registered On: " + rssItemData.AddedOn + "</h2></li>";
                description += "</ul></div>";

                rssXml.WriteCData(description);
                rssXml.WriteEndElement();

                rssXml.WriteElementString("pubDate", " ");
                rssXml.WriteEndElement();
            }

        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    private void BindLatestItemRss(List<LatestItemRssInfo> lstLatestItemRss, AspxCommonInfo aspxCommonObj)
    {
        string noImageUrl = string.Empty;
        StoreSettingConfig ssc = new StoreSettingConfig();
        noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                               aspxCommonObj.PortalID, aspxCommonObj.CultureName);
        string x = HttpContext.Current.Request.ApplicationPath;
        string authority = HttpContext.Current.Request.Url.Authority;
        string pageUrl = authority + x;
        string pageURL = Request.Url.AbsoluteUri;
        string[] path = pageURL.Split('?');
        string pagepath = path[0];
        HttpContext.Current.Response.Clear();
        HttpContext.Current.Response.ContentType = "text/xml";
        XmlTextWriter rssXml = new XmlTextWriter(HttpContext.Current.Response.OutputStream, Encoding.UTF8);

        rssXml.WriteStartDocument();
        rssXml.WriteStartElement("rss");
        rssXml.WriteAttributeString("version", "2.0");
        rssXml.WriteStartElement("channel");
        rssXml.WriteElementString("link", pagepath);
        rssXml.WriteElementString("title", getLocale("AspxCommerce Latest Items"));
        if (lstLatestItemRss.Count > 0)
        {
            foreach (LatestItemRssInfo rssItemData in lstLatestItemRss)
            {
                string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads" + rssItemData.ImagePath;
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", rssItemData.ItemName);
                rssXml.WriteElementString("link",
                                          "http://" + pageUrl + "/item/" + rssItemData.SKU +
                                          SageFrameSettingKeys.PageExtension);
                rssXml.WriteStartElement("description");
                var description = "";
                if (rssItemData.ImagePath == "")
                {
                    imagePath = noImageUrl;
                }
                else
                {
                    //Resize Image Dynamically
                    InterceptImageController.ImageBuilder(rssItemData.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);

                }
                description = "<div><a href=http://" + pageUrl + "/item/" + rssItemData.SKU +
                              SageFrameSettingKeys.PageExtension + "><img src=http://" + pageUrl + "/" +
                              imagePath.Replace("uploads", "uploads/Small/") + " alt=" + rssItemData.ItemName + " /> </a></div>";
                description += "</br>" + HttpUtility.HtmlDecode(rssItemData.ShortDescription);
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                rssXml.WriteEndElement();
            }
        }
        else
        {
            rssXml.WriteStartElement("item");
            rssXml.WriteElementString("title", "");
            rssXml.WriteElementString("link", "");
            rssXml.WriteStartElement("description");
            var description = "";
            description = "<div><h2><span>" + getLocale("This store has no items listed yet!") + "</span></h2></div>";
            rssXml.WriteCData(description);
            rssXml.WriteEndElement();
            rssXml.WriteEndElement();
        }
        rssXml.WriteEndElement();
        rssXml.WriteEndElement();
        rssXml.WriteEndDocument();
        rssXml.Flush();
        rssXml.Close();
        HttpContext.Current.Response.End();
    }
Exemplo n.º 34
0
    private void BindBrandRss(List<BrandRssInfo> brandRssContent, AspxCommonInfo aspxCommonObj)
    {
        string x = HttpContext.Current.Request.ApplicationPath;
        string authority = HttpContext.Current.Request.Url.Authority;
        string pageUrl = authority + x;
        string pageURL = Request.Url.AbsoluteUri;
        string[] path = pageURL.Split('?');
        string pagepath = path[0];
        HttpContext.Current.Response.Clear();
        HttpContext.Current.Response.ContentType = "text/xml";
        XmlTextWriter rssXml = new XmlTextWriter(HttpContext.Current.Response.OutputStream, Encoding.UTF8);
        rssXml.WriteStartDocument();
        rssXml.WriteStartElement("rss");
        rssXml.WriteAttributeString("version", "2.0");
        rssXml.WriteStartElement("channel");
        rssXml.WriteElementString("link", pagepath);
        switch (rssOption)
        {
            case "brands":
                rssXml.WriteElementString("title", getLocale("AspxCommerce Popular Brands"));               
                break;
            case "fbrands":
                rssXml.WriteElementString("title", getLocale("AspxCommerce Featured Brands"));               
                break;
            case "abrands":
                rssXml.WriteElementString("title", getLocale("AspxCommerce All Brands"));               
                break;
            default:
                break;
        }
        if (brandRssContent.Count > 0)
        {
            foreach (BrandRssInfo rssFeedBrand in brandRssContent)
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", rssFeedBrand.BrandName);
                rssXml.WriteElementString("link",
                                          "http://" + pageUrl + "/brand/" +AspxUtility.fixedEncodeURIComponent(rssFeedBrand.BrandName) + SageFrameSettingKeys.PageExtension);
                rssXml.WriteStartElement("description");
                string description = "";
                description += "<div>";
                string []brandURL= rssFeedBrand.BrandImageUrl.Split('/');
                string brandImage = brandURL[brandURL.Length - 1] ;
                if (brandImage!="")
                {
                 //Resize Image Dynamically
                  InterceptImageController.ImageBuilder(brandImage, ImageType.Small, ImageCategoryType.Brand, aspxCommonObj);
                }
                description += "<div><a href=http://" + pageUrl + "/brand/" + rssFeedBrand.BrandName + SageFrameSettingKeys.PageExtension + ">";
                description += "<img src=http://" + pageUrl + "/" + rssFeedBrand.BrandImageUrl.Replace("uploads", "uploads/Small") + "  />";
                description += "</a></div>";
                description += "<p>" + HttpUtility.HtmlDecode(rssFeedBrand.BrandDescription) + "</p>";

                description += "</div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteElementString("pubDate", rssFeedBrand.AddedOn);
                rssXml.WriteEndElement();
            }
        }
        else
        {
            rssXml.WriteStartElement("item");
            rssXml.WriteElementString("title", "");
            rssXml.WriteElementString("link", "");
            rssXml.WriteStartElement("description");
            var description = "";
            description = "<div><h2><span>"+getLocale("This store has no items listed yet!")+"</span></h2></div>";
            rssXml.WriteCData(description);
            rssXml.WriteEndElement();
            rssXml.WriteEndElement();
        }
        rssXml.WriteEndElement();
        rssXml.WriteEndElement();
        rssXml.WriteEndDocument();
        rssXml.Flush();
        rssXml.Close();
        HttpContext.Current.Response.End();
    }
    private void GetBrandRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
            List<RssFeedBrand> brandRssContent = AspxRssFeedProvider.GetBrandRssContent(aspxCommonObj, rssOption, count);
            foreach (RssFeedBrand rssFeedBrand in brandRssContent)
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", rssFeedBrand.BrandName);
                rssXml.WriteElementString("link",
                                          "http://" + pageUrl + "/brand/" + rssFeedBrand.BrandName + SageFrameSettingKeys.PageExtension);
                rssXml.WriteStartElement("description");
                string description = "";
                description += "<div>";
                description += "<div><a href=http://" + pageUrl + "/brand/" + rssFeedBrand.BrandName + SageFrameSettingKeys.PageExtension + ">";
                string[] brandURL = rssFeedBrand.BrandImageUrl.Split('/');
                string brandImage = brandURL[brandURL.Length - 1];
                if (brandImage != "")
                {
                    //Resize Image Dynamically
                    InterceptImageController.ImageBuilder(brandImage, ImageType.Small, ImageCategoryType.Brand, aspxCommonObj);
                }
                description += "<img src=http://" + pageUrl + "/" + rssFeedBrand.BrandImageUrl.Replace("uploads", "uploads/Small") + "  />";
                description += "</a></div>";
                description += "<p>" + HttpUtility.HtmlDecode(rssFeedBrand.BrandDescription) + "</p>";

                description += "</div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteElementString("pubDate", rssFeedBrand.AddedOn);
                rssXml.WriteEndElement();
            }
        }
        catch (Exception ex)
        {

            throw ex;
        }
    }
    private void GetLowStockItemRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string noImageUrl = string.Empty;
            StoreSettingConfig ssc = new StoreSettingConfig();
            noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                   aspxCommonObj.PortalID, aspxCommonObj.CultureName);
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
            List<RssFeedLowStock> bestSellItemRss = AspxRssFeedProvider.GetLowStockItemRssContent(aspxCommonObj, rssOption, count);
            foreach (RssFeedLowStock rssItemData in bestSellItemRss)
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", rssItemData.ItemName);
                rssXml.WriteElementString("link",
                                          "http://" + pageUrl + "/item/" + rssItemData.SKU +
                                          SageFrameSettingKeys.PageExtension);
                rssXml.WriteStartElement("description");
                string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + rssItemData.ImagePath;
                if (rssItemData.ImagePath == "")
                {
                    imagePath = noImageUrl;
                }
                else
                {   //Resize Image Dynamically
                    InterceptImageController.ImageBuilder(rssItemData.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);
                }
                var description = "";
                description = "<div><a href=http://" + pageUrl + "/item/" + rssItemData.SKU +
                              SageFrameSettingKeys.PageExtension + "><img alt=" +
                              rssItemData.ItemName + " src=http://" + pageUrl + "/" +
                              imagePath.Replace("uploads", "uploads/Small") + " /> </a>";

                description += "<div class=\"itemTable\"><table width=\"20%\">";
                description += "<tr><td><h2>Price: </h2>" + rssItemData.Price + "</td><td><h2>Quantity: </h2>" +
                               rssItemData.Quantity + "</td></tr>";
                description += "<tr><td><h2>Status: </h2>" + rssItemData.Status + "</td><td></td></tr>";
                description += "</table></div>";
                description += "</div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteElementString("pubDate", "");
                rssXml.WriteEndElement();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    private void GetPopularTagRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string noImageUrl = string.Empty;
            StoreSettingConfig ssc = new StoreSettingConfig();
            noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                   aspxCommonObj.PortalID, aspxCommonObj.CultureName);
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
            PopularTagsController ptc = new PopularTagsController();
            List<PopularTagsRssFeedInfo> popularTagRss= ptc.GetRssFeedContens(aspxCommonObj, pageURL, rssOption, PopularTagRssCount);

            if (popularTagRss.Count > 0)
            {
                foreach (PopularTagsRssFeedInfo rssItemData in popularTagRss)
                {
                    rssXml.WriteStartElement("item");
                    rssXml.WriteElementString("title", rssItemData.TagName);
                    rssXml.WriteElementString("link", "http://" + pageUrl + "/tagsitems/tags" + SageFrameSettingKeys.PageExtension + "?tagsId=" + rssItemData.TagIDs +
                                              "");
                    rssXml.WriteStartElement("description");

                    var description = "";

                    description += "<div><ul style=list-style-type: none><h2> Taged Items:</h2>";
                    foreach (var tagItemInfo in rssItemData.TagItemInfo)
                    {
                        string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + tagItemInfo.ImagePath;
                        if (tagItemInfo.ImagePath == "")
                        {
                            imagePath = noImageUrl;
                        }
                        description += "<li style=\"float: left;display: inline;padding-right: 50px\"><h2>" +
                                       tagItemInfo.ItemName + "</h2><a href=http://" + pageUrl + "/item/" +
                                       tagItemInfo.SKU + SageFrameSettingKeys.PageExtension + "><img alt=" +
                                       tagItemInfo.ItemName + " src=http://" + pageUrl + "/" +
                                       imagePath.Replace("uploads", "uploads/Small") + " /></a></li>";
                    }
                    description += "</ul></div>";
                    rssXml.WriteCData(description);
                    rssXml.WriteEndElement();
                    rssXml.WriteEndElement();
                }
            }
            else
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", "");
                rssXml.WriteElementString("link", "");
                rssXml.WriteStartElement("description");
                var description = "";
                description = "<div><h2><span>Not any items have been tagged yet!</span></h2></div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteEndElement();
            }

        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    private void GetNewOrderRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string noImageUrl = string.Empty;
            StoreSettingConfig ssc = new StoreSettingConfig();
            noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                   aspxCommonObj.PortalID, aspxCommonObj.CultureName);
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
            List<RssFeedNewOrders> popularTagRss = AspxRssFeedProvider.GetNewOrdersRssContent(aspxCommonObj,
                                                                                                rssOption, count);
            foreach (RssFeedNewOrders rssItemData in popularTagRss)
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", "");
                rssXml.WriteElementString("link", " ");
                rssXml.WriteStartElement("description");

                var description = "";

                description += "<div><table width=\"100%\"><tr><td colspan=\"2\">OrderID:" + rssItemData.OrderID + "</td></tr>";
                description += "<tr><td>Order Date: " + rssItemData.AddedOn + "</td><td>Order Status: " + rssItemData.OrderStatus + "</td></tr>";
                description += "<tr><td>Store Name: " + rssItemData.StoreName + "</td><td>Customer Name: " + rssItemData.CustomerName + "</td></tr>";
                description += "<tr><td>Grand Total: " + rssItemData.GrandTotal + "</td><td>Payment Method Name: " + rssItemData.PaymentMethodName + "</td></tr>";
                description += "</table></div>";
                description += "<div><ul style=list-style-type: none><h2> Ordered Items:</h2>";
                foreach (var orderItemInfo in rssItemData.OrderItemInfo)
                {
                    if (orderItemInfo.ImagePath == "")
                    {
                        orderItemInfo.ImagePath = noImageUrl;
                    }
                    else
                    {   //Resize Image Dynamically
                        InterceptImageController.ImageBuilder(orderItemInfo.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);
                    }
                    description += "<li style=\"float: left;display: inline;padding-right: 50px\"><h2>" +
                                   orderItemInfo.ItemName + "</h2><a href=http://" + pageUrl + "/item/" +
                                   orderItemInfo.SKU + SageFrameSettingKeys.PageExtension + "><img alt=" +
                                   orderItemInfo.ItemName + " src=http://" + pageUrl + "/" +
                                   orderItemInfo.ImagePath.Replace("uploads", "uploads/Small") + " /></a></li>";
                }
                description += "</ul></div>";

                rssXml.WriteCData(description);
                rssXml.WriteEndElement();

                // rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                rssXml.WriteElementString("pubDate", "");
                rssXml.WriteEndElement();
            }

        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    private void GetNewItemTagRssFeedContent(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string noImageUrl = string.Empty;
            StoreSettingConfig ssc = new StoreSettingConfig();
            noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                   aspxCommonObj.PortalID, aspxCommonObj.CultureName);
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
            List<RssFeedNewTag> popularTagRss = AspxRssFeedProvider.GetNewTagsRssContent(aspxCommonObj, rssOption, count);
            foreach (RssFeedNewTag rssItemData in popularTagRss)
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", rssItemData.TagName);
                rssXml.WriteElementString("link",
                                          "http://" + pageUrl + "/tagsitems/tags" +
                                          SageFrameSettingKeys.PageExtension + "?tagsId=" + rssItemData.TagIDs + "");
                rssXml.WriteStartElement("description");

                var description = "";

                description += "<div><h2>Tag Name: " + rssItemData.TagName + "</h2></br><h2><span>Tag Status: " +
                               rssItemData.TagStatus +
                               "</span></h2><ul style=list-style-type: none><h2> Taged Item:</h2>";
                foreach (var tagItemInfo in rssItemData.TagItemInfo)
                {
                    string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + tagItemInfo.ImagePath;
                    if (tagItemInfo.ImagePath == "")
                    {
                        imagePath = noImageUrl;
                    }
                    else
                    {   //Resize Image Dynamically
                        InterceptImageController.ImageBuilder(tagItemInfo.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);
                    }
                    description += "<li style=\"float: left;display: inline;padding-right: 50px\"><h2>" +
                                   tagItemInfo.ItemName + "</h2><a href=http://" + pageUrl + "/item/" +
                                   tagItemInfo.SKU + SageFrameSettingKeys.PageExtension + "><img alt=" +
                                   tagItemInfo.ItemName + " src=http://" + pageUrl + "/" +
                                   imagePath.Replace("uploads", "uploads/Small") + " /></a></li>";
                }
                description += "</ul></div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                rssXml.WriteEndElement();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
Exemplo n.º 40
0
    private void GenerateFeed( int _businessUserId ,int userId, IList<GetTributesFeed> ObjTributeList)
    {
        string[] virtualDir = CommonUtilities.GetPath();
        DateTime DOB = new DateTime();
        DateTime DOD = new DateTime();

        Response.Clear();
        Response.ContentType = "text/xml";
        XmlTextWriter xmlTextObject = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
        xmlTextObject.WriteStartDocument();
        xmlTextObject.WriteStartElement("feed");
        #region Feed
        xmlTextObject.WriteAttributeString("xmlns", "http://www.w3.org/2005/Atom");
        xmlTextObject.WriteElementString("title", "Your Tribute feed");

        xmlTextObject.WriteStartElement("link");
        xmlTextObject.WriteAttributeString("rel", "self");
        xmlTextObject.WriteAttributeString("type", "application/atom+xml");
        xmlTextObject.WriteAttributeString("href", "http://www.yourtribute.com/tribute/atom.xml");
        xmlTextObject.WriteEndElement();

        xmlTextObject.WriteStartElement("link");
        xmlTextObject.WriteAttributeString("rel", "alternate");
        xmlTextObject.WriteAttributeString("type", "text/html");
        xmlTextObject.WriteAttributeString("href", "http://www.yourtribute.com/tribute/");
        xmlTextObject.WriteEndElement();

        xmlTextObject.WriteElementString("id", "http://www.yourtribute.com");

        xmlTextObject.WriteElementString("published", DateTime.Now.ToString());

        xmlTextObject.WriteElementString("updated", FeedUpdatedDate.ToString());

        xmlTextObject.WriteStartElement("author");
        xmlTextObject.WriteElementString("name", "YourTribute");
        xmlTextObject.WriteEndElement();

        if ((_businessUserId > 0) && (Request.QueryString["Search"] != null))
        {
            _tributeName = "%" + Request.QueryString["Search"].ToString() + "%";
            object[] objprm = { _tributeName, _tributeTypeId, _businessUserId };
            _totalObituaries = _presenter.GetTotalActiveObituariesOnTributeName(objprm);
            xmlTextObject.WriteElementString("TotalActiveObitCount", _totalObituaries.ToString());
        }
        else if (_businessUserId > 0)
        {
            _totalObituaries = _presenter.GetTotalActiveObituaries(_businessUserId);
            xmlTextObject.WriteElementString("TotalActiveObitCount", _totalObituaries.ToString());
        }
        else if (Request.QueryString["Search"] != null)
        {
            _tributeName = "%" + Request.QueryString["Search"].ToString() + "%";
            object[] objprm = { _tributeName, _tributeTypeId, null };
            _totalObituaries = _presenter.GetTotalActiveObituariesOnTributeName(objprm);
            xmlTextObject.WriteElementString("TotalActiveObitCount", _totalObituaries.ToString());
        }

        xmlTextObject.WriteElementString("refreshRate", "1000");
        if (userId > 0)
        {
            #region loop for multiple entry
            foreach (GetTributesFeed tribute in _objTributeList)
            {
                strDates = string.Empty;
                string strObituaryText = string.Empty;
                //_tributeURL = "http://" + objVal.TypeDescription.ToLower() + "." + WebConfig.TopLevelDomain + "/" + objVal.TributeUrl;
                //_tributeHomeUrl = WebConfig.AppBaseDomain + tribute.TributeUrl + "/";
                _tributeHomeUrl = "http://" + tribute.TypeDescription.ToLower() + "." + WebConfig.TopLevelDomain + "/" + tribute.TributeUrl + "/";
                _tributeImageUrl = virtualDir[2] + tribute.TributeImage.ToString();
                if (!(string.IsNullOrEmpty(tribute.DOB)))
                {
                    DOB = DateTime.Parse(tribute.DOB.ToString());
                    strDates = DOB.ToShortDateString() + " - ";
                }
                if (!(string.IsNullOrEmpty(tribute.DOD)))
                {
                    DOD = DateTime.Parse(tribute.DOD);
                    strDates = strDates + DOD.ToShortDateString();
                    //strDates = strDates + DOD.ToString("dd MMMM yyyy");
                }
                strObituaryText = CleanMessage(tribute.MessageWithoutHtml.ToString());
                if (strObituaryText.Length > 250)
                {
                    strObituaryText = strObituaryText.Substring(0, 250) + "...";
                }

                #region item entry tag
                xmlTextObject.WriteStartElement("entry");
                xmlTextObject.WriteElementString("title", tribute.TributeName);
                xmlTextObject.WriteElementString("published", tribute.DOD.ToString());
                if (tribute.ModifiedDate != null)
                {
                    xmlTextObject.WriteElementString("updated", tribute.ModifiedDate.ToString());
                }
                else
                {
                    xmlTextObject.WriteElementString("updated", tribute.StartDate.ToString());
                }

                xmlTextObject.WriteStartElement("catagory");
                xmlTextObject.WriteAttributeString("term", "Obituaries");
                xmlTextObject.WriteEndElement();

                xmlTextObject.WriteElementString("id", tribute.TributeId.ToString());

                xmlTextObject.WriteStartElement("summary");
                //xmlTextObject.WriteStartElement("summary", "<![CDATA[<div><img width='120' height='120' src=" + _tributeImageUrl + " alt='memorial_TributePhoto.jpg' title='memorial_TributePhoto.jpg' style='float:left;'/><span style='margin-left:150px;'><p>" + strDates + "</p>" + strObituaryText);
                xmlTextObject.WriteAttributeString("type", "html");
                xmlTextObject.WriteCData("<img height='120' src='" + _tributeImageUrl + "' alt='memorial_TributePhoto.jpg' title='memorial_TributePhoto.jpg' style='float:left; margin-right:20px;'/><span style='margin-left:150px;'><p>" + strDates + "</p>" + strObituaryText);
                xmlTextObject.WriteEndElement();

                xmlTextObject.WriteStartElement("content");
                //xmlTextObject.WriteElementString("content", "<![CDATA[<p><iframe src=" + _tributeHomeUrl + " name='frame1' scrolling='auto' frameborder='no' align='center' height = '1100px' width = '962px'><br /></iframe></p>]]>");
                xmlTextObject.WriteCData("<p><center><iframe src=" + _tributeHomeUrl + " name='frame1' scrolling='auto' frameborder='no' align='center' height = '1100px' width = '962px'><br /></iframe></center></p>");
                xmlTextObject.WriteEndElement();

                xmlTextObject.WriteEndElement();
                #endregion
                //}
            }
            #endregion
        }
        else
        {
            # region for each entry
            foreach (GetTributesFeed tribute in _objTributeList)
            {
                strDates = string.Empty;
                string strObituaryText = string.Empty;
                _tributeHomeUrl = "http://" + tribute.TypeDescription.ToLower() + "." + WebConfig.TopLevelDomain + "/" + tribute.TributeUrl + "/";
                _tributeImageUrl = virtualDir[2] + tribute.TributeImage.ToString();
                if (!(string.IsNullOrEmpty(tribute.DOB)))
                {
                    DOB = DateTime.Parse(tribute.DOB.ToString());
                    strDates = DOB.ToShortDateString() + " - ";
                }
                if (!(string.IsNullOrEmpty(tribute.DOD)))
                {
                    DOD = DateTime.Parse(tribute.DOD);
                    strDates = strDates + DOD.ToShortDateString();
                    //strDates = strDates + DOD.ToString("dd MMMM yyyy");
                }
                strObituaryText = CleanMessage(tribute.MessageWithoutHtml.ToString());

                #region item entry tag
                xmlTextObject.WriteStartElement("entry");
                xmlTextObject.WriteElementString("PersonsName", tribute.TributeName);
                xmlTextObject.WriteElementString("PersonsPhoto", _tributeImageUrl);
                xmlTextObject.WriteElementString("ObituaryText", strObituaryText);
                xmlTextObject.WriteElementString("DeathDate", tribute.DOD.ToString());
                xmlTextObject.WriteElementString("TributeLink", _tributeHomeUrl);
                xmlTextObject.WriteElementString("FuneralHomeIdentifier", tribute.UserId.ToString());
                xmlTextObject.WriteEndElement();
                #endregion

            }
            #endregion
        }