public StringBuilder BuildDeleteByIdsPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string parameter = entity.GetPrimaryKeys().Select(pk => $"IEnumerable<{pk.GetClrType()}> {pk.ClrName}").Single(); res.AppendLine($"public void DeleteAllByIds({parameter}){{"); res.AppendLine("IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.Delete);"); string parameters = entity.GetPrimaryKeys().Select(pk => $"{pk.ClrName}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"BuildDeleteAllByIdsQuery(ref statement,{parameters});"); res.AppendLine("Execute(statement);"); res.AppendLine("}"); } return res; }
public StringBuilder BuildDeleteByIdInterface(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string parameters = entity.GetPrimaryKeys().Select(pk => $"{pk.GetClrType()} {pk.ClrName}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"void Delete({parameters});"); } return res; }
public StringBuilder BuildDeleteByIdsInterface(DataStructure entity) { StringBuilder res; if (entity.GetPrimaryKeys().Count() == 1) { string parameter = entity.GetPrimaryKeys().Select(pk => $"IEnumerable<{pk.GetClrType()}> {pk.ClrName}").Single(); res = new StringBuilder($"void DeleteAllByIds({parameter});"); } else { res = new StringBuilder(); } return res; }
public StringBuilder BuildDeleteByIdsPrivate(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string parameter = entity.GetPrimaryKeys().Select(pk => $"IEnumerable<{pk.GetClrType()}> {pk.ClrName}").Single(); res.AppendLine($"private void BuildDeleteAllByIdsQuery(ref IStatementBuilder sb,{parameter}){{"); res.AppendLine($"sb.Append(\"delete from {entity.Name} where \");"); foreach (var k in entity.GetPrimaryKeys()) { if (k.Name == entity.GetPrimaryKeys().First().Name) { res.AppendLine($"sb.Append(\"WHERE [{k.Name}] = @{k.Name} \");"); } else { res.AppendLine($"sb.Append(\"AND [{k.Name}] = @{k.Name} \");"); } } foreach (var k in entity.GetPrimaryKeys()) { res.AppendLine($"sb.AddParameter(\"{k.Name}\", {k.ClrName},DbType.{k.GetDbType()});"); } res.AppendLine("}"); } return res; }
public StringBuilder BuildSelectSingleByIdPrivate(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string protoParameters = entity.GetPrimaryKeys().Select(pk => $"{pk.GetClrType()} {pk.ClrName}").Aggregate((a, b) => a + ", " + b); string parameters = entity.GetPrimaryKeys().Select(pk => $"{pk.ClrName}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"private void BuildGetQuery(ref IStatementBuilder sb,{protoParameters}){{"); res.AppendLine($"sb.Append(\"select top 1 * from {entity.Name} where \");"); foreach (var k in entity.GetPrimaryKeys()) { if (k.Name == entity.GetPrimaryKeys().First().Name) { res.AppendLine($"sb.Append(\"WHERE [{k.Name}] = @{k.Name} \");"); } else { res.AppendLine($"sb.Append(\"AND [{k.Name}] = @{k.Name} \");"); } } foreach (var k in entity.GetPrimaryKeys()) { res.AppendLine($"sb.AddParameter(\"{k.Name}\", {k.ClrName},DbType.{k.GetDbType()});"); } res.AppendLine("}"); } return res; }
public StringBuilder BuildSelectSingleByIdPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string protoParameters = entity.GetPrimaryKeys().Select(pk => $"{pk.GetClrType()} {pk.ClrName}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"public {entity.ClrName} Get({protoParameters}){{"); res.AppendLine($"IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.SelectSingleRow);"); string parameters = entity.GetPrimaryKeys().Select(pk => $"{pk.ClrName}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"BuildGetQuery(ref statement, {parameters});"); 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 BuildSelectAllWithPaginationPrivate(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string primaryKeys = entity.GetPrimaryKeys().Select(pk => $"{pk.Name}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"private void BuildGetAllPagedQuery(ref IStatementBuilder sb, 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} )\");"); res.AppendLine($"sb.Append(\"select * from SQLPaging with (nolock) where resultNum > ((@page - 1) * @pageSize)\");"); res.AppendLine($"sb.AddParameter(\"page\", page,DbType.Int32);"); res.AppendLine($"sb.AddParameter(\"pageSize\",pageSize,DbType.Int32);"); res.AppendLine("}"); } return res; }
public StringBuilder BuildSelectAllWithPaginationPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { res.AppendLine($"public IPagedEnumerable<{entity.ClrName}> GetAllPaged(int pageSize ,int page){{"); res.AppendLine($"IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.SelectMultipleRows);"); res.AppendLine($"BuildGetAllPagedQuery(ref statement,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 BuildSelectAllWithPaginationInterface(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { res.AppendLine($"IPagedEnumerable<{entity.ClrName}> GetAllPaged(int pageSize ,int page);"); } return res; }
public StringBuilder BuildSelectAllByIdsWithPaginationPublic(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string parameter = entity.GetPrimaryKeys().Select(pk => $"IEnumerable<{pk.GetClrType()}> {pk.ClrName}").Single(); res.AppendLine($"public IPagedEnumerable<{entity.ClrName}> GetAllPagedByIds({parameter},int pageSize ,int page){{"); res.AppendLine($"IStatementBuilder statement = _statementBuilderFactory.Build(QueryType.SelectMultipleRows);"); string parameters = entity.GetPrimaryKeys().Select(pk => $"{pk.ClrName}").Aggregate((a, b) => a + ", " + b); res.AppendLine($"BuildGetAllPagedByIdsQuery(ref statement, {parameters},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 BuildSelectAllByIdsWithPaginationPrivate(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string parameter = entity.GetPrimaryKeys().Select(pk => $"IEnumerable<{pk.GetClrType()}> {pk.ClrName}").Single(); res.AppendLine($"private void BuildGetAllPagedByIdsQuery(ref IStatementBuilder sb,{parameter},int pageSize ,int page){{"); string primaryKeys = entity.GetPrimaryKeys().Select(pk => $"{pk.Name}").Aggregate((a, b) => a + ", " + b); 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} \");"); foreach (var k in entity.GetPrimaryKeys()) { if (k.Name == entity.GetPrimaryKeys().First().Name) { res.AppendLine($"sb.Append(\"WHERE [{k.Name}] = @{k.Name} \");"); } else { res.AppendLine($"sb.Append(\"AND [{k.Name}] = @{k.Name} \");"); } } res.AppendLine($"sb.Append(\")select * from SQLPaging with (nolock) where resultNum > ((@page - 1) * @pageSize)\");"); foreach (var k in entity.GetPrimaryKeys()) { res.AppendLine($"sb.AddParameter(\"{k.Name}\", {k.ClrName},DbType.{k.GetDbType()});"); } res.AppendLine($"sb.AddParameter(\"page\", page,DbType.Int32);"); res.AppendLine($"sb.AddParameter(\"pageSize\",pageSize,DbType.Int32);"); res.AppendLine("}"); } return res; }
public StringBuilder BuildSelectAllByIdsWithPaginationInterface(DataStructure entity) { StringBuilder res = new StringBuilder(); if (entity.GetPrimaryKeys().Any()) { string parameter = entity.GetPrimaryKeys().Select(pk => $"IEnumerable<{pk.GetClrType()}> {pk.ClrName}").Single(); res = new StringBuilder($"IPagedEnumerable<{entity.ClrName}> GetAllPagedByIds({parameter},int pageSize ,int page);"); } 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; }