public void Analyze(IQueryParameter input) { var columns = input.GetType().GetProperties() .Where(i => !SqlBuilderHelper.ShouldIgnore(i, IgnoreTypes)); Columns = string.Join( ",\r\n", columns.Select(i => $@"{ParentTable}.[{i.Name}] = @{i.Name.ToLower()}") ); }
public void Analyze <TParam>() where TParam : IQueryParameter { var inputProperties = typeof(TParam).GetProperties().ToArray(); _columns = _propertyInfos .Where(i => !SqlBuilderHelper.ShouldIgnore(i, IgnoreTypes) && inputProperties .FirstOrDefault(inputPro => string.Equals(inputPro.Name, i.Name, StringComparison.CurrentCultureIgnoreCase)) != null ).ToList(); }
private void AnalyzePrimaryColumns <T>() { var typePair = GetTable <T>(); var tableAttribute = typePair.Key; var properties = typePair.Value; _fromAlias = tableAttribute.Alias; _fromSchema = tableAttribute.Schema; _fromTable = tableAttribute.Table; var columns = properties.Where(i => !SqlBuilderHelper.ShouldIgnore(i, IgnoreNonPrimaryColumnTypes)) .Select(i => $"{tableAttribute.Alias}.[{i.Name}]"); _columns.AddRange(columns); }