public async Task <IEnumerable <OldTranslation> > OldQuery(TranslationsEnvironment env)
        {
            var mongoRepository = new MongoRepository <Translation> (new BaseDbBuilder());
            var queryExpression = PredicateBuilder.True <Translation> ();

            queryExpression = queryExpression.And(x => x.Environment == env);

            if (_Branch.HasBranch)
            {
                Log.Debug($"Query: adding Branch predicate for branch: '{_Branch.Value}'");

                queryExpression = queryExpression.And(x => x.Branch == null);
            }

            if (env != TranslationsEnvironment.Desktop && env != TranslationsEnvironment.OldDesktop)
            {
                queryExpression = queryExpression.Or(x => x.Environment == TranslationsEnvironment.Common);
            }

            var queryResult = await mongoRepository.QueryAsync(queryExpression);

            Log.Debug($"Query: returning '{queryResult.Count()}' environment '{env.ToString()}''");

            var result = queryResult.Select(x => new OldTranslation()
            {
                KEY = x.Key,
                DA  = x.Da,
                EN  = x.En,
                SV  = x.Sv,
                NB  = x.Nb,
            });

            return(result);
        }
        public async Task <IEnumerable <Translation> > Query(TranslationsEnvironment env)
        {
            var mongoRepository = new MongoRepository <Translation> (new BaseDbBuilder());
            var queryExpression = PredicateBuilder.True <Translation> ();

            queryExpression = queryExpression.And(x => x.Environment == env);

            if (_Branch.HasBranch)
            {
                Log.Debug($"Query: adding Branch predicate for branch: '{_Branch.Value}'");

                queryExpression = queryExpression.And(x => x.Branch == null);
            }

            if (env != TranslationsEnvironment.Desktop && env != TranslationsEnvironment.OldDesktop)
            {
                queryExpression = queryExpression.Or(x => x.Environment == TranslationsEnvironment.Common);
            }

            var queryResult = mongoRepository.Query(queryExpression).ToList();

            Log.Debug($"Query: returning '{queryResult.Count()}' environment '{env.ToString()}''");

            return(queryResult.OrderBy(x => x.Key));
        }