Mám následující app.config:
<configuration>
<appSettings>
<add key="Domain" value="google.cz" />
<add key="Port" value="80" />
<add key="Name" value="Tomas" />
</appSettings>
</configuration>
A mám následující program:>
var settings = new ApplicationSettings(ConfigurationManager.AppSettings);
Console.WriteLine(settings.Domain);
Console.WriteLine(settings.Port);
Console.WriteLine(settings.Name);
Tento program na konzoli vypíše hodnoty z konfiguračního souboru. Potud jasné.
A teď máme třídu ApplicationSettings, která vypadá takto:
public class ApplicationSettings
{
private readonly NameValueCollection appSettingsCollection;
public ApplicationSettings(NameValueCollection appSettingsCollection)
{
this.appSettingsCollection = appSettingsCollection;
}
// TODO: Sem doplňte funkci GetValue, která vytáhne příslušnou hodnotu z kolekce
// Tato funkce se ale musí volat bez jakéhokoliv parametru
public string Domain => GetValue();
public string Port => GetValue();
public string Name => GetValue();
}
Jak musí vypadat funkce GetValue, aby to fungovalo správně? Podstatné je, že nesmíte změnit to, jak vypadají vlastnosti Domain, Port a Name - musí i nadále volat tu funkci GetValue bez parametru.