/// <summary> /// Creates an <see cref="IEnumerable{T}" /> from an <see cref="IMMEnumTable" /> /// </summary> /// <param name="source">An <see cref="IMMEnumTable" /> to create an <see cref="IEnumerable{T}" /> from.</param> /// <returns>An <see cref="IEnumerable{T}" /> that contains the feature classes from the input source.</returns> public static IEnumerable <ITable> AsEnumerable(this IMMEnumTable source) { if (source != null) { source.Reset(); ITable table = source.Next(); while (table != null) { yield return(table); table = source.Next(); } } }
/// <summary> /// Returns all of the tables that have been assigned the <paramref name="modelName" /> in the given workspace. /// </summary> /// <param name="source">The source.</param> /// <param name="modelName">The model names.</param> /// <returns> /// An <see cref="IEnumerable{T}" /> that contains the tables from the input source. /// </returns> /// <exception cref="ArgumentNullException">modelName</exception> public static IEnumerable <ITable> GetTables(this IWorkspace source, string modelName) { if (source == null) { return(null); } if (modelName == null) { throw new ArgumentNullException("modelName"); } IMMEnumTable list = ModelNameManager.Instance.TablesFromModelNameWS(source, modelName); return(list.AsEnumerable()); }
/// <summary> /// Returns all of the tables that have been assigned the <paramref name="modelNames" /> in the given workspace. /// </summary> /// <param name="source">The source.</param> /// <param name="modelNames">The model names.</param> /// <returns> /// An <see cref="IEnumerable{T}" /> that contains the tables from the input source. /// </returns> /// <exception cref="ArgumentNullException">modelNames</exception> public static IEnumerable <ITable> GetTables(this IWorkspace source, params string[] modelNames) { if (modelNames == null) { throw new ArgumentNullException("modelNames"); } foreach (var modelName in modelNames) { IMMEnumTable list = ModelNameManager.Instance.TablesFromModelNameWS(source, modelName); foreach (var o in list.AsEnumerable()) { yield return(o); } } }