Search code examples
enterprise-library

How to upgrate to EntLib 5 (from 1.1) IStorageProviderReader doesn't exist


Yes, I know. Looks like my new company is still using EntLib 1.1!!!!!

I am trying to upgrade the both client and server side apps to use new EntLib 5 libraries.

First thing I have come across is that we use custom Storage Provider by inheriting IStorageProviderReader as we store the configs in separate system.

Config looks like this:

<enterpriselibrary.configurationSettings applicationName="Archiving.Services" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.microsoft.com/practices/enterpriselibrary/08-31-2004/configuration">
    <configurationSections>
      <configurationSection xsi:type="ReadOnlyConfigurationSectionData" name="dataConfiguration" encrypt="false">
        <storageProvider xsi:type="CustomStorageProviderData" name="Profile Service Storage Provider" type="Our.Custom.Provider, provider.dll"/>
        <dataTransformer xsi:type="XmlSerializerTransformerData" name="Xml Serializer Transformer">
          <includeTypes/>
        </dataTransformer>
      </configurationSection>

What's the alternative class/interface I can use to provide my own custom storage provider so that override and all *.config files from our custom provider?


Solution

  • This is going way back. I believe that with the release of Enterprise Library 2.0 the original Configuration Application Block was removed. This was because .NET 2.0 added native configuration functionality (very similar to the Enterprise Library functionality).

    What you should do is to migrate your Enterprise Library providers to use the functionality available in the System.Configuration Namespace.