时间:2021-07-01 10:21:17 帮助过:14人阅读
实现业务层接口
public static string DataTableToBaseService(DataTable dt, string tableName, string nameSpace) { string key = dt.Rows[0]["列名"].ToString(); StringBuilder sb = new StringBuilder(); sb.AppendFormat(@" using System; using System.Collections.Generic; using System.Data; using System.Text; using System.Data.SqlClient; using {0}.Mapping; using {0}.IRepository; using {0}.IService; namespace {0}.Service {{ public partial class {1}Service:I{1}Service {{", nameSpace, tableName); sb.AppendFormat(@" private readonly I{0}Repository _{0}Repository; public {0}Service(I{0}Repository {0}Repository) {{ this._{0}Repository = {0}Repository; }}", tableName); ///新增 sb.AppendFormat(@" /// <summary> /// 新增/修改 /// </summary> public int Save({0} model,ref string msg) {{ var iret = -1; try {{ iret = _{0}Repository.Save(model); }} catch(Exception e) {{ msg = e.Message; }} return iret; }} /// <summary> /// 获取数据(分页) /// </summary> /// <param name=""filterSql"">查询条件</param> /// <param name=""pageIndex"">页码</param> /// <param name=""pageSize"">每页显示数量</param> /// <param name=""total"">总行数</param> /// <param name=""sort"">排序条件</param> /// <returns>返回DataTable</returns> public DataTable PageData(string filterSql, int pageIndex, int pageSize, out int total, string sort = """") {{ return _{0}Repository.PageData(filterSql,pageIndex,pageSize,out total,sort); }} /// <summary> /// 获取数据(分页) /// </summary> /// <param name=""filterSql"">查询条件</param> /// <param name=""sort"">排序条件</param> /// <returns>返回DataTable</returns> public DataTable PageData(string filterSql, string sort = """") {{ return _{0}Repository.PageData(filterSql,sort); }} /// <summary> /// 获取单条数据 /// </summary> /// <param name=""filterSql"">查询条件</param> /// <returns>返回DataTable</returns> public DataTable GetSingle(string filterSql) {{ return _{0}Repository.GetSingle(filterSql); }} /// <summary> /// 删除数据 /// </summary> /// <param name=""key"">主键</param> /// <returns>返回DataTable</returns> public int Delete({2} {1},ref string msg) {{ var iret = -1; try {{ iret = _{0}Repository.Delete({1}); }} catch(Exception e) {{ msg = e.Message; }} return iret; }} ", tableName, key, SqlTableToMapping.ChangeType(dt.Rows[0]["数据类型"].ToString())); sb.Append(@" } }"); return sb.ToString(); } #endregion #region 生成自定义类 public static string DataTableToUserService(string tableName, string nameSpace) { StringBuilder reval = new StringBuilder(); reval.AppendFormat(@" using System; using System.Collections.Generic; using System.Data; using System.Text; using System.Data.SqlClient; using {0}.Mapping; namespace {0}.Service {{ public partial class {1}Service {{ }} }}", nameSpace, tableName); return reval.ToString(); }View Code
Autoface注入
public static string AutofaceClass(string nameSpace, DataTable dt) { StringBuilder sb = new StringBuilder(); sb.AppendFormat(@" using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Autofac; using {0}.Mapping; using {0}.IService; namespace {0}.Service {{ public class ServiceModule : Module {{ protected override void Load(ContainerBuilder builder) {{", nameSpace); for (var i = 0; i < dt.Rows.Count; i++) { sb.AppendFormat(@" builder.RegisterType<{0}>().As<{1}>();", dt.Rows[i]["name"] + "Service", "I" + dt.Rows[i]["name"] + "Service"); } sb.Append(@" base.Load(builder); } } }"); return sb.ToString(); }View Code
SQL Table 自动生成Net底层-生成业务层Service
标签:auto 返回 .text class erb 获取 cti app one