/// <summary> /// Given a provider name locate the necessary <see cref="IAdoNameResolver" /> /// in the configuration file. /// </summary> /// <param name="providerName"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="IAdoNameResolver" />. /// </returns> public static IAdoNameResolver Create(string providerName) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = DbProviderSettings.Get(AdoWorkflowPersistenceService.ConfigurationSectionName) .NameResolvers.FindByProviderName(providerName); IAdoNameResolver nameResolver = null; if (mapping != null) { nameResolver = TypeUtilities.CreateInstance <IAdoNameResolver>(mapping.Type); } return(nameResolver); }
/// <summary> /// Given a section name and provider name locate the necessary /// <see cref="IAdoValueReader" /> in the configuration file. /// </summary> /// <param name="sectionName"> /// Configuration section to retrieve data from. /// </param> /// <param name="providerName"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="IAdoValueReader" />. /// </returns> public static IAdoValueReader Create(string sectionName, string providerName) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = DbProviderSettings.Get( sectionName).ValueReaders.FindByProviderName(providerName); IAdoValueReader valueReader; if (mapping != null) { valueReader = TypeUtilities.CreateInstance <IAdoValueReader>(mapping.Type); } else { // no value reader mapping found in config // return the default value reader valueReader = new DefaultAdoValueReader(); } return(valueReader); }