protected virtual string XmlEncode(string text) { Contract.Requires(text != null); var xe = XElement.Parse("<x></x>"); xe.Value = text; var xmlEncoded = String.Join("", xe.Nodes().Select(x => x.ToString()).ToArray()); return xmlEncoded; }