public InMemoryCurrencyRepository(IRepositoryReader reader) { currencies = new Lazy <Dictionary <string, Currency> >( () => { return (reader .GetCurrencies() .ToDictionary(currency => currency.ISO)); }); }