Skip to main content
replaced http://stackoverflow.com/ with https://stackoverflow.com/
Source Link
URL Rewriter Bot
URL Rewriter Bot

I tried using thisthis answer to load up Tedski.config, but I get an error:

I tried using this answer to load up Tedski.config, but I get an error:

I tried using this answer to load up Tedski.config, but I get an error:

ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = Server.MapPath("~/Tedski.config");
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigUserLevel.None);
TedskiSection section = config.GetSection("Tedski") as TedskiSection; //fails
 
/* ConfigurationErrorsException "An error occurred creating the 
 * configuration section handler for Tedski: Could not load type 
 * 'Tedski.Configuration.TedskiSection' from assembly 'System.Configuration,
 * Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' */

ConfigurationErrorsException "An error occurred creating the configuration section handler for Tedski: Could not load type 'Tedski.Configuration.TedskiSection' from assembly 'System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = Server.MapPath("~/Tedski.config");
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigUserLevel.None);
TedskiSection section = config.GetSection("Tedski") as TedskiSection; //fails
 
/* ConfigurationErrorsException "An error occurred creating the 
 * configuration section handler for Tedski: Could not load type 
 * 'Tedski.Configuration.TedskiSection' from assembly 'System.Configuration,
 * Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' */
ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = Server.MapPath("~/Tedski.config");
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigUserLevel.None);
TedskiSection section = config.GetSection("Tedski") as TedskiSection; //fails

ConfigurationErrorsException "An error occurred creating the configuration section handler for Tedski: Could not load type 'Tedski.Configuration.TedskiSection' from assembly 'System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

Source Link
tedski
  • 2.3k
  • 3
  • 27
  • 48

How to load a custom .config file with Configuration

I'm not sure I am going about this right, but I am trying to write a custom configuration file for an asp.NET web project. I want to make it clear this is not a windows form, because half the stuff I find is only for those. I am trying to read and write to this file to change a couple of application settings.

I wrote this huge class using this tutorial. Here's a simplified version:

namespace Tedski.Configuration {
    public class TedskiSection : ConfigurationSection {

        private static ConfigurationProperty s_propName;
        private static ConfigurationPropertyCollection s_properties;

        static TedskiSection() {
            s_propName = new ConfigurationProperty(
                "name", 
                typeof(string), 
                null, 
                ConfigurationPropertyOptions.IsRequired
            );
            s_properties = new ConfigurationPropertyCollection();
            s_properties.Add(s_propName);
        }

        protected override ConfigurationPropertyCollection Properties {
            get { return s_properties; }
        }

        [ConfigurationProperty("name")]
        public string Name {
            get {
                return (string)base[s_propName];
            }
            set {
                base[s_propName] = value;
            }
        }
    }
} 

I am now not sure where to define my configuration. I can put this in my Web.config file like this:

<configuration>
    <configSections>
        <section name="Tedski" type="Tedski.Configuration.TedskiSection" />
    </configSections>
    <Tedski name="Ted" />
</configuration>

and everything loads up fine with this:

TedskiSection section = ConfigurationManager.GetSection("Tedski") as TedskiSection;
Console.WriteLine(section.Name); //produces "Ted"

However, I need to be able to load this up with the Configuration object, in order to be able to call Configuration.Save(). I can't seem to load up that specific section and save the Web.config (from what I understand this is dangerous). Another solution I'm trying out is creating a separate .config file (Tedski.config) with the same XML syntax as defined above.

I tried using this answer to load up Tedski.config, but I get an error:

ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = Server.MapPath("~/Tedski.config");
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigUserLevel.None);
TedskiSection section = config.GetSection("Tedski") as TedskiSection; //fails

/* ConfigurationErrorsException "An error occurred creating the 
 * configuration section handler for Tedski: Could not load type 
 * 'Tedski.Configuration.TedskiSection' from assembly 'System.Configuration,
 * Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' */

If I got this to load, I could then modify section.Name and call config.Save(), but I'm stuck here.