/// <summary> /// Importation des tables de la base de données /// </summary> /// <param name="parentElement">The parent element.</param> /// <param name="serviceProvider">The service provider.</param> /// <param name="dataObject">The data object.</param> /// <returns></returns> public static bool ImportTables(Package parentElement, IServiceProvider serviceProvider, IDataObject dataObject) { List <DbContainer> tables = new List <DbContainer>(); IDSRefNavigator navigator = null; try { navigator = GetDsRefNavigatorInstance(dataObject); if (navigator != null) { foreach (DbTable table in navigator.GetTables(serviceProvider)) { tables.Add(table); } ServiceLocator.Instance.DatabaseImporter.Import(navigator.DataConnection, parentElement, tables, DatabaseType.Table); } } finally { if (navigator != null) { navigator.Dispose(); } } return(tables.Count > 0); }
/// <summary> /// Indique si le dataObject contient une ou des références de table /// </summary> /// <param name="dataObject">The data object.</param> /// <returns> /// <c>true</c> if the specified data object contains table; otherwise, <c>false</c>. /// </returns> public static bool ContainsTable(IDataObject dataObject) { IDSRefNavigator navigator = null; try { navigator = GetDsRefNavigatorInstance(dataObject); if (navigator != null && navigator.ContainsOnlyTables) { return(true); } } finally { if (navigator != null) { navigator.Dispose(); } } return(false); }