public StringBuilder BuildSelectAllByForeignKeyInterface(DataStructure entity) { StringBuilder res = new StringBuilder(); foreach (Key k in entity.GetForeignKeys()) { res.AppendLine($"IEnumerable<{entity.ClrName}> GetAllBy{k.ClrName}({k.GetClrType()} {k.ClrName});"); } return res; }
public StringBuilder BuildDeleteByForeignKeyInterface(DataStructure entity) { StringBuilder res = new StringBuilder(); foreach (Key k in entity.GetForeignKeys()) { res.AppendLine($"void DeleteAllBy{k.ClrName}({k.GetClrType()} {k.Name});"); } return res; }
public StringBuilder BuildDeleteByForeignKeyPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); foreach (Key fk in entity.GetForeignKeys()) { res.AppendLine($"public void DeleteAllBy{fk.ClrName}({fk.GetClrType()} {fk.ClrName}){{"); res.AppendLine("IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.Delete);"); res.AppendLine($"BuildDeleteAllBy{fk.ClrName}Query(ref statement, {fk.ClrName});"); res.AppendLine("Execute(statement);"); res.AppendLine("}"); } return res; }
public StringBuilder BuildDeleteByForeignKeyPrivate(DataStructure entity) { StringBuilder res = new StringBuilder(); foreach (Key fk in entity.GetForeignKeys()) { res.AppendLine($"private void BuildDeleteAllBy{fk.ClrName}Query(ref IStatementBuilder sb,{fk.GetClrType()} {fk.ClrName}){{"); res.AppendLine($"sb.Append(\"delete from {entity.Name} where {fk.Name} = @{fk.Name}\");"); res.AppendLine($"sb.AddParameter(\"{fk.Name}\", {fk.ClrName},DbType.{fk.GetDbType()});"); res.AppendLine("}"); } return res; }
public StringBuilder BuildSelectSingleByForeignKeyPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); foreach (Key fk in entity.GetForeignKeys()) { res.AppendLine($"public {entity.ClrName} GetBy{fk.ClrName}({fk.GetClrType()} {fk.ClrName}){{"); res.AppendLine($"IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.SelectSingleRow);"); res.AppendLine($"BuildGetBy{fk.ClrName}Query(ref statement, {fk.ClrName});"); res.AppendLine($"IResult query = Execute(statement);"); res.AppendLine($"{entity.ClrName} res = query.SingleOrDefault<{entity.ClrName}>();"); res.AppendLine($"return res;"); res.AppendLine("}"); } return res; }
public StringBuilder BuildSelectAllByForeignKeyWithPaginationPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { foreach (Key fk in entity.GetForeignKeys()) { res.AppendLine($"public IPagedEnumerable<{entity.ClrName}> GetAllPagedBy{fk.ClrName}({fk.GetClrType()} {fk.ClrName},int pageSize ,int page){{"); res.AppendLine($"IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.SelectMultipleRows);"); res.AppendLine($"BuildGetAllPagedBy{fk.ClrName}Query(ref statement, {fk.ClrName}, pageSize , page);"); res.AppendLine($"IResult query = Execute(statement);"); res.AppendLine($"IPagedEnumerable<{entity.ClrName}> res = new PagedEnumerable<{entity.ClrName}>(query.ToList<{entity.ClrName}>(),page,pageSize,0);"); res.AppendLine($"return res;"); res.AppendLine("}"); } } return res; }
public StringBuilder BuildSelectAllByForeignKeyWithPaginationPrivate(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string primaryKeys = entity.GetPrimaryKeys().Select(pk => $"{pk.Name}").Aggregate((a, b) => a + ", " + b); foreach (Key fk in entity.GetForeignKeys()) { res.AppendLine($"private void BuildGetAllPagedBy{fk.ClrName}Query(ref IStatementBuilder sb,{fk.GetClrType()} {fk.ClrName},int pageSize ,int page){{"); res.AppendLine($"sb.Append(\";With SQLPaging As(\");"); res.AppendLine($"sb.Append(\"Select Top(@pageSize * @page) ROW_NUMBER() OVER(ORDER BY {primaryKeys} asc)\");"); res.AppendLine($"sb.Append(\"as resultNum, *\");"); res.AppendLine($"sb.Append(\"FROM {entity.Name} where {fk.Name} = @{fk.Name})\");"); res.AppendLine($"sb.Append(\"select * from SQLPaging with (nolock) where resultNum > ((@page - 1) * @pageSize)\");"); res.AppendLine($"sb.AddParameter(\"{fk.Name}\", {fk.ClrName},DbType.{fk.GetDbType()});"); res.AppendLine($"sb.AddParameter(\"page\", page,DbType.Int32);"); res.AppendLine($"sb.AddParameter(\"pageSize\",pageSize,DbType.Int32);"); res.AppendLine("}"); } } return res; }
public StringBuilder BuildSelectAllByForeignKeyWithPaginationInterface(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { foreach (Key k in entity.GetForeignKeys()) { res.AppendLine($"IPagedEnumerable<{entity.ClrName}> GetAllPagedBy{k.ClrName}({k.GetClrType()} {k.ClrName},int pageSize ,int page);"); } } return res; }
public StringBuilder BuildSelectAllByForeignKeyPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); foreach (Key fk in entity.GetForeignKeys()) { res.AppendLine($"public IEnumerable<{entity.ClrName}> GetAllBy{fk.ClrName}({fk.GetClrType()} {fk.ClrName}){{"); res.AppendLine($"IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.SelectMultipleRows);"); res.AppendLine($"BuildGetAllBy{fk.ClrName}Query(ref statement, {fk.ClrName});"); res.AppendLine($"IResult query = Execute(statement);"); res.AppendLine($"IEnumerable<{entity.ClrName}> res = query.ToList<{entity.ClrName}>();"); res.AppendLine($"return res;"); res.AppendLine("}"); } return res; }