J'écris une page qui peut utiliser plusieurs thèmes différents, et je vais stocker des informations sur chaque thème dans le web.config.Stocker des valeurs dans web.config - appSettings ou configSection - qui est plus efficace?
Est-il plus efficace de créer un nouveau groupe de sections et de tout stocker ensemble, ou simplement de tout mettre dans appSettings?
solution configSection
<configSections>
<sectionGroup name="SchedulerPage">
<section name="Providers" type="System.Configuration.NameValueSectionHandler"/>
<section name="Themes" type="System.Configuration.NameValueSectionHandler"/>
</sectionGroup>
</configSections>
<SchedulerPage>
<Themes>
<add key="PI" value="PISchedulerForm"/>
<add key="UB" value="UBSchedulerForm"/>
</Themes>
</SchedulerPage>
Pour accéder à des valeurs dans le configSection, je suis en utilisant ce code:
NameValueCollection themes = ConfigurationManager.GetSection("SchedulerPage/Themes") as NameValueCollection;
String SchedulerTheme = themes["UB"];
solution appSettings
<appSettings>
<add key="PITheme" value="PISchedulerForm"/>
<add key="UBTheme" value="UBSchedulerForm"/>
</appSettings>
Pour accéder à des valeurs dans appSettings, j'utilise ce code
String SchedulerTheme = ConfigurationManager.AppSettings["UBSchedulerForm"].ToString();
mais disons que nous continuons à ajouter des valeurs à appSettings et la liste devient énorme. Ne serait-il pas question de performance pour énumérer toute la liste et trouver l'entrée qui est nécessaire? Je crois que c'est ce que fait le cadre. Il récupère la section appSettings et énumère ensuite dans toute la paire de valeurs de clé pour en trouver une avec la valeur clé correspondante. – ItsZeus