/ / Uzyskaj niestandardową sekcję AppSettings z ASP.NET Web.Config - asp.net, web-config

Uzyskaj niestandardową sekcję AppSettings z ASP.NET Web.Config - asp.net, web-config

Mam następującą sekcję konfiguracji stylu niestandardowych ustawień aplikacji

<configSections>
<sectionGroup name="Fruits">
<section name="Colors" />
</sectionGroup>
</configSections>

<Fruits>
<add key="apple" value="red" />
<add key="banana" value="yellow" />
</Fruits>

Próbuję użyć następującego kodu, aby pobrać kolor apple

    var settingsCollection = ConfigurationManager.GetSection("Fruits/Colors") as AppSettingsSection;
if (settingsCollection != null)
{
var color= settingsCollection.Settings["apple"];
}

Powyższy kod nie działa, ponieważ settingsCollection nie otrzymuje żadnego obiektu przypisanego do niego, ponieważ nie można go rzutować do AppSettingsSection.

Kiedy umieszczam następujące w oknie Zegarek, widzę ten typ jako KeyValueInternalCollection

ConfigurationManager.GetSection („Owoce / kolory”) jako AppSettingsSection

czego mi brakuje? Jestem w aplikacji internetowej, więc zakładam, że nie muszę jej używać OpenExeConfigurationi nie mam takiej metody jak ConfigurationManager.OpenWebConfiguration jak znalazłem na niektórych forach.

Odpowiedzi:

0 dla odpowiedzi № 1

Możesz wypróbować ten fragment kodu.

NameValueCollection Fruits = (NameValueCollection)ConfigurationManager.GetSection("Fruits");

foreach (string key in Fruits.Keys)
{
string[] values = Fruits.GetValues(key);
foreach (string value in values)
{
Label1.Text += key + " - " + value + "<br>";
}
}