FromXElement() public method

Converts a given T:XElement into a T:ChangeSetHistory.
public FromXElement ( XElement element ) : ChangeSetHistory
element XElement The to convert.
return ChangeSetHistory
 /// <summary>
 /// Converts a given <see cref="T:XElement"/> into an <see cref="T:Account"/>.
 /// </summary>
 /// <param name="element">The <see cref="T:XElement"/> to convert.</param>
 /// <returns>The newly created <see cref="T:Account"/>.</returns>
 public Account FromXElement(XElement element)
 {
     Account account = AccountFactory.Create(element.Name.LocalName);
     foreach (XElement childNode in element.Nodes()) {
         switch (childNode.Name.LocalName) {
             case "AccountID":
                 account.AccountID = new Guid(childNode.Value);
                 break;
             case "CreatedByUsername":
                 account.CreatedByUsername = childNode.Value;
                 break;
             case "CreatedDate":
                 account.CreatedDate = DateTime.Parse(childNode.Value);
                 break;
             case "Description":
                 account.Description = childNode.Value;
                 break;
             case "Name":
                 account.Name = childNode.Value;
                 break;
             case "UpdatedByUsername":
                 account.UpdatedByUsername = childNode.Value;
                 break;
             case "UpdatedDate":
                 account.UpdatedDate = DateTime.Parse(childNode.Value);
                 break;
             case "ChangeSetHistory":
                 ChangeSetHistoryXElementAdapter adapter = new ChangeSetHistoryXElementAdapter();
                 account.ChangeSetHistory = adapter.FromXElement(childNode);
                 break;
         }
     }
     return account;
 }
 /// <summary>
 /// Converts a given <see cref="T:XElement"/> into a <see cref="T:Transaction"/>.
 /// </summary>
 /// <param name="element">The <see cref="T:XElement"/> to convert.</param>
 /// <param name="workbook">The <see cref="T:Workbook"/> to use to fetch additional information for the <see cref="Transaction"/>.</param>
 /// <returns>The newly created <see cref="T:Transaction"/>.</returns>
 public Transaction FromXElement(XElement element, Workbook workbook)
 {
     Transaction transaction = new Transaction();
     foreach (XElement childNode in element.Nodes()) {
         switch (childNode.Name.LocalName) {
             case "DebitAccountID":
                 transaction.DebitAccount = workbook.FetchAccount(new Guid(childNode.Value));
                 break;
             case "CreditAccountID":
                 transaction.CreditAccount = workbook.FetchAccount(new Guid(childNode.Value));
                 break;
             case "CreatedByUsername":
                 transaction.CreatedByUsername = childNode.Value;
                 break;
             case "CreatedDate":
                 transaction.CreatedDate = DateTime.Parse(childNode.Value);
                 break;
             case "Date":
                 transaction.Date = DateTime.Parse(childNode.Value);
                 break;
             case "Particulars":
                 transaction.Particulars = childNode.Value;
                 break;
             case "TransactionID":
                 transaction.TransactionID = new Guid(childNode.Value);
                 break;
             case "Value":
                 transaction.Value = decimal.Parse(childNode.Value);
                 break;
             case "UpdatedByUsername":
                 transaction.UpdatedByUsername = childNode.Value;
                 break;
             case "UpdatedDate":
                 transaction.UpdatedDate = DateTime.Parse(childNode.Value);
                 break;
             case "ChangeSetHistory":
                 ChangeSetHistoryXElementAdapter adapter = new ChangeSetHistoryXElementAdapter();
                 transaction.ChangeSetHistory = adapter.FromXElement(childNode);
                 break;
         }
     }
     return transaction;
 }