/// <summary />
        public static string GetTableName(Gravitybox.GeoLocation.EFDAL.EntityMappingConstants entity)
        {
            var item = GetMetaData(entity);

            if (item == null)
            {
                return(null);
            }
            return(item.GetTableName());
        }
        /// <summary>
        /// Gets the meta data object for an entity
        /// </summary>
        public static Gravitybox.GeoLocation.EFDAL.IMetadata GetMetaData(Gravitybox.GeoLocation.EFDAL.EntityMappingConstants table)
        {
            switch (table)
            {
            case Gravitybox.GeoLocation.EFDAL.EntityMappingConstants.CanadaPostalCode: return(new Gravitybox.GeoLocation.EFDAL.Entity.Metadata.CanadaPostalCodeMetadata());

            case Gravitybox.GeoLocation.EFDAL.EntityMappingConstants.City: return(new Gravitybox.GeoLocation.EFDAL.Entity.Metadata.CityMetadata());

            case Gravitybox.GeoLocation.EFDAL.EntityMappingConstants.State: return(new Gravitybox.GeoLocation.EFDAL.Entity.Metadata.StateMetadata());

            case Gravitybox.GeoLocation.EFDAL.EntityMappingConstants.Zip: return(new Gravitybox.GeoLocation.EFDAL.Entity.Metadata.ZipMetadata());
            }
            throw new Exception("Entity not found!");
        }