CCNet.Build.Confluence.PageDocument.Render C# (CSharp) Méthode

Render() public méthode

Renders page content back to its XML representation.
public Render ( ) : string
Résultat string
		public string Render()
		{
			var sb = new StringBuilder();
			using (var sw = new StringWriter(sb))
			{
				using (var xtw = new XmlTextWriter(sw))
				{
					m_document.WriteTo(xtw);
				}
			}

			var xml = sb.ToString();

			xml = xml
				.RemoveFromStart("<?xml version=\"1.0\" encoding=\"utf-16\"?>")
				.RemoveFromStart(s_beforePage)
				.RemoveFromEnd(s_afterPage);

			xml = DecodeEntities(xml);
			foreach (var item in s_render)
			{
				xml = xml.Replace(item.Key, item.Value);
			}

			return xml.CleanWhitespaces();
		}
	}

Usage Example

		private bool UpdateSummaryPage(IEnumerable<IProjectPage> pages, PageSummary summary)
		{
			var updated = new PageDocument();

			var tbody = new XElement(
				"tbody",
				new XElement(
					"tr",
					new XElement("th", "Area"),
					new XElement("th", "Project"),
					new XElement("th", "Type"),
					new XElement("th", ".NET"),
					new XElement("th", "Owner"),
					new XElement("th", "Status")));

			foreach (var page in pages.OrderBy(p => p.OrderKey))
			{
				tbody.Add(page.RenderSummaryRow(false));
			}

			updated.Root.Add(
				new XElement(
					"table",
					tbody));

			var content = updated.Render();
			var existing = m_confluence.GetCachedPage(summary);

			var before = NormalizeForComparison(existing.Content);
			var after = NormalizeForComparison(content);

			if (after == before)
				return false;

			existing.Content = content;
			m_confluence.UpdatePage(existing);
			return true;
		}
All Usage Examples Of CCNet.Build.Confluence.PageDocument::Render