public void DropStore(DataTypeDescriptor typeDescriptor) { XmlDataProviderDocumentCache.ClearCache(); InterfaceConfigurationManipulator.Remove(_dataProviderContext.ProviderName, typeDescriptor); _dataTypeConfigurationElements = _dataTypeConfigurationElements.Where(s => s.DataTypeId != typeDescriptor.DataTypeId).Evaluate(); }
public void DropStore(DataTypeDescriptor dataTypeDescriptor) { using (TimerProfilerFacade.CreateTimerProfiler()) { SqlStoreManipulator.DropStoresForType(_dataProviderContext.ProviderName, dataTypeDescriptor); InterfaceConfigurationManipulator.Remove(_dataProviderContext.ProviderName, dataTypeDescriptor); InterfaceConfigurationElement oldElement = _interfaceConfigurationElements.FirstOrDefault(f => f.DataTypeId == dataTypeDescriptor.DataTypeId); if (oldElement != null) { _interfaceConfigurationElements.Remove(oldElement); } Guid dataTypeId = dataTypeDescriptor.DataTypeId; int storesRemoved = _createdSqlDataTypeStoreTables.RemoveAll(item => item.DataTypeId == dataTypeId); if (storesRemoved > 0) { Type interfaceType = dataTypeDescriptor.GetInterfaceType(); _sqlDataTypeStoresContainer.ForgetInterface(interfaceType); } } }