public static IXmlMapping Convert(
     IMapping mapping,
     MappingDictionary mDict,
     bool nameAsXPath)
 {
     if (nameAsXPath && string.IsNullOrWhiteSpace(mapping.GetProperty("XPath")))
     {
         string columnName = mapping.ColumnName;
         mapping.Properties["XPath"] = columnName;
         if (mapping is IXmlMapping)
         {
             (mapping as IXmlMapping).XPath = columnName;
         }
     }
     return(XmlMapping.Convert(mapping, mDict));
 }
 public IDictionary <string, IXmlMapping> GetXmlMappings(
     string tableName,
     bool nameAsXPath)
 {
     if (string.IsNullOrWhiteSpace(nameof(tableName)))
     {
         throw new ArgumentNullException(nameof(tableName));
     }
     if (!this.InnerData.Tables.Contains(tableName))
     {
         throw new ArgumentException(string.Format("Invalid table name:{0}", (object)tableName));
     }
     return((IDictionary <string, IXmlMapping>) this.GetMappings(tableName).Cast <KeyValuePair <string, IMapping> >().ToDictionary <KeyValuePair <string, IMapping>, string, IXmlMapping>((Func <KeyValuePair <string, IMapping>, string>)(p => p.Key), (Func <KeyValuePair <string, IMapping>, IXmlMapping>)(p => XmlMapping.Convert(p.Value, this, nameAsXPath))));
 }