protected StandardRepository(TypeLookup typeLookup, SQLConstants sqlConstants, EntityUtils entityUtils, ExpressionUtils expressionUtils,
                                     ISQLExecutor <TCommand, TConnection, TParameter> sqlExecutor, List <string> updateableFields = null)
        {
            _typeLookup      = typeLookup;
            _sqlConstants    = sqlConstants;
            _entityUtils     = entityUtils;
            _expressionUtils = expressionUtils;
            SQLExecutor      = sqlExecutor;
            UpdateableFields = updateableFields;

            var entityType = typeof(T);

            Fields     = _entityUtils.GetProperties(entityType);
            BaseFields = _entityUtils.GetBaseProperties();
        }