public SQLServerQueryExecutor(IQueryBuilderResolver queryBuilderResolver, ISQLServerDataTypeDeterminator dataTypeDeterminator) { if (queryBuilderResolver == null) { throw new ArgumentNullException(nameof(queryBuilderResolver)); } this.queryBuilder = queryBuilderResolver.ResolveFromSQLProvider(Enums.SQLProvider.SQLServer); this.dataTypeDeterminator = dataTypeDeterminator ?? throw new ArgumentNullException(nameof(dataTypeDeterminator)); }