Avatar billede srofhest Nybegynder
21. maj 2009 - 14:42 Der er 4 kommentarer og
1 løsning

Custom configs i web.config

Jeg vil gerne kunne hente forskellige configs ud af min web config og jeg har fulgt denne artikel http://www.4guysfromrolla.com/articles/032807-1.aspx

men jeg får fejlen The type or namespace name 'ASPNET2ConfigurationState' could not be found (are you missing a using directive or an assembly reference?) 3 steder i
[code]
    public class ASPNET2ConfigurationStateCollection : ConfigurationElementCollection
    {
        public ASPNET2ConfigurationState this[int index]
        {
            get
            {
                return base.BaseGet(index) as ASPNET2ConfigurationState;
            }
            set
            {
                if (base.BaseGet(index) != null)
                {
                    base.BaseRemoveAt(index);
                }
                this.BaseAdd(index, value);
            }
        }

        protected override ConfigurationElement CreateNewElement()
        {
            return new ASPNET2ConfigurationState();
        }

        protected override object GetElementKey(ConfigurationElement element)
        {
            return ((ASPNET2ConfigurationState)element).Name;
        }
}
[/code]

Hvorfor virker det ikke?
Avatar billede arne_v Ekspert
21. maj 2009 - 14:51 #1
Den kan ikke finde klassen ASPNET2ConfigurationState - hvordan har du deployet den?
Avatar billede srofhest Nybegynder
21. maj 2009 - 15:03 #2
jeg har 2 filer der begge ligger i App_Code. den ene er ASPNET2ConfigurationStateCollection.cs som du har set.

Den anden er ASPNET2Configuration

public class ASPNET2 : ConfigurationSection
    {
        [ConfigurationProperty("ASPNET2")]
        public ASPNET2ConfigurationStateCollection ASPNET2
        {
            get
            {
                return this["ASPNET2"] as ASPNET2ConfigurationStateCollection;
            }
        }
        [ConfigurationProperty("Name", DefaultValue = "It is what it is.", IsRequired = true)]
        public string Name
        {
            get
            {
                return this["Name"] as string;
            }
        }
        [ConfigurationProperty("Format", IsRequired = true)]
        public string Format
        {
            get
            {
                return (string)this["Format"];
            }
        }
        [ConfigurationProperty("Location", IsRequired = true)]
        public string Location
        {
            get
            {
                return (string)this["Location"];
            }
        }
        public static ASPNET2 GetConfig()
        {
            return ConfigurationSettings.GetConfig("ASPNET2") as ASPNET2;
        }
    }

og saa i web.config har jeg
  <configSections>
  ...
  <section name="Test" type="ASPNET2Configuration"/>
  </configSections>

og

<Test Name="Tester" Format="123" Location="Test/Test2.gif" />
Avatar billede arne_v Ekspert
21. maj 2009 - 15:21 #3
Saa mangler du vel ogsaa ASPNET2ConfigurationState.cs ?
Avatar billede srofhest Nybegynder
21. maj 2009 - 18:10 #4
Ja, hvor uintelligent kan man være! :s
Avatar billede arne_v Ekspert
24. maj 2009 - 02:08 #5
Jeg smider et svar.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester