Dev2.Runtime.ServiceModel.Data.Resource.ToXml C# (CSharp) Method

ToXml() public method

public ToXml ( ) : System.Xml.Linq.XElement
return System.Xml.Linq.XElement
        public virtual XElement ToXml()
        {

            return new XElement(_rootElements[ResourceType],
                new XAttribute("ID", ResourceID),
                new XAttribute("Name", ResourceName ?? string.Empty),
                new XAttribute("ResourceType", ResourceType),
                new XAttribute("IsValid", IsValid),
                new XElement("DisplayName", ResourceName ?? string.Empty),
                new XElement("Category", ResourcePath ?? string.Empty),
                new XElement("AuthorRoles", AuthorRoles ?? string.Empty),
                // ReSharper disable ConstantNullCoalescingCondition
                new XElement("ErrorMessages", WriteErrors() ?? null)
                // ReSharper restore ConstantNullCoalescingCondition
                );
        }

Usage Example

 public void ToXMLWhereValidResourceWIthErrorInfoDataIsValidFalse()
 {
     //------------Setup for test--------------------------
     var validXML = GetValidXMLString();
     var textReader = new StringReader(validXML);
     XElement element = XElement.Load(textReader, LoadOptions.None);
     var resource = new Resource(element);
     resource.Errors.Clear();
     resource.IsValid = false;
     resource.Errors.Add(new ErrorInfo { ErrorType = ErrorType.Critical, FixType = FixType.None, Message = "Fix Me", StackTrace = "Line 1" });
     //------------Execute Test---------------------------
     var xElement = resource.ToXml();
     //------------Assert Results-------------------------
     Assert.IsNotNull(xElement);
     var errorMessagesElement = xElement.Element("ErrorMessages");
     Assert.IsNotNull(errorMessagesElement);
     var errorMessageElement = errorMessagesElement.Element("ErrorMessage");
     Assert.IsNotNull(errorMessageElement);
     Assert.AreEqual("Fix Me", errorMessageElement.Attribute("Message").Value);
     Assert.AreEqual("Line 1", errorMessageElement.Attribute("StackTrace").Value);
     Assert.AreEqual("None", errorMessageElement.Attribute("FixType").Value);
     Assert.AreEqual("Critical", errorMessageElement.Attribute("ErrorType").Value);
 }