private void DeserializeTab(XContainer tabElement)
 {
     var tab = new Tab
     {
         Caption = tabElement.ElementValue("Caption"),
         Id = Convert.ToInt32(tabElement.ElementValue("Id")),
         Order = !String.IsNullOrEmpty(tabElement.ElementValue("Order"))
                     ? (int?)Convert.ToInt32(tabElement.ElementValue("Order"))
                     : null
     };
     type.Tabs.Add(tab);
 }
 private void SerializeTab(XElement tabsElement, Tab tab)
 {
     var tabElement = new XElement("Tab",
         new XElement("Id", tab.Id),
         CreateElement("Caption", tab.Caption)
         );
     if (tab.Order.HasValue)
         tabElement.Add(new XElement("Order", tab.Order.Value));
     tabsElement.Add(tabElement);
 }