/// <summary> /// 添加并保存一个实体 /// </summary> public static T AddSave <T>(this CHIS.DbContext.CHISEntitiesSqlServer db, T entity) where T : class { var add = db.Add <T>(entity); db.SaveChanges(); return(add.Entity); }
/// <summary> /// 运行自定义函数 /// 引用下列的命名空间 /// 1. using System.Data.SqlClient; /// 2. using Ass; /// </summary> /// <param name="funcName">函数名</param> /// <param name="sqlParms">参数</param> /// <returns></returns> public static object MySqlFunction(this CHIS.DbContext.CHISEntitiesSqlServer db, string funcName, params System.Data.SqlClient.SqlParameter[] sqlParms) { string connectionString = new Code.Utility.DataBaseHelper().ConnectionString; using (var conn = new System.Data.SqlClient.SqlConnection(connectionString)) { string strSql = funcName; //自定SQL函数 var cmd = new System.Data.SqlClient.SqlCommand(strSql, conn); cmd.CommandType = System.Data.CommandType.StoredProcedure; if (sqlParms != null) { foreach (var p in sqlParms) { cmd.Parameters.Add(p); } } System.Data.SqlClient.SqlParameter rtnp = new System.Data.SqlClient.SqlParameter(); rtnp.ParameterName = "@Return"; rtnp.Direction = System.Data.ParameterDirection.ReturnValue; cmd.Parameters.Add(rtnp); conn.Open(); object o = cmd.ExecuteScalar(); return(rtnp.Value); } }
public JKWebNetService(CHIS.DbContext.CHISEntitiesSqlServer db , IHostingEnvironment env) : base(db) { _env = env; #if DEBUG _tscid = "tsjk001"; _key = "49ek#739"; // _url = "http://218.107.9.125:8070/openapi/openApis/main"; #endif }
///// <summary> ///// Ah自写扩展方法, 删除一个实体 考虑到后面删除的统一性 ///// </summary> //public static Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<T> RemoveAh<T>(this Microsoft.EntityFrameworkCore.DbContext db, T entity) where T : class //{ // return db.Remove<T>(entity); //} //public static void RemoveRangeAh<T>(this Microsoft.EntityFrameworkCore.DbContext db, params T[] entities) where T:class //{ // foreach (var item in entities.ToArray()) // { // db.Remove<T>(item); // } // // db.RemoveRange(entities); //} #region 分页查询 /// <summary> /// 获取分页后的集合 /// </summary> /// <param name="findtotal">输出查询的总数</param> /// <param name="totalPage">输出总页数</param> /// <param name="pageIndex">页码</param> /// <param name="pageSize">页容</param> /// <param name="sort">排序</param> /// <param name="wherePredicate">条件Lambda</param> /// <param name="orderPredicate">排序Lambda</param> /// <returns></returns> public static IList <T> GetPagedList <T, Torder>(this CHIS.DbContext.CHISEntitiesSqlServer db, out int findtotal, out int totalPage, int pageIndex, int pageSize, System.Linq.Expressions.Expression <Func <T, bool> > wherePredicate, System.Linq.Expressions.Expression <Func <T, Torder> > orderPredicate) where T : class { var findlist = db.Set <T>().Where(wherePredicate); findtotal = findlist.Count(); totalPage = (int)Math.Ceiling(findtotal * 1.0f / pageSize); //排序获取当前页的数据 var dataList = findlist.OrderBy(orderPredicate). Skip(pageSize * (pageIndex - 1)). Take(pageSize).AsQueryable().ToList(); return(dataList); }
/// <summary> /// 执行存储过程返回表单 /// </summary> public static IList <T> SqlQuery <T>(this CHIS.DbContext.CHISEntitiesSqlServer db, string sql, params object[] parameters) where T : new() { //注意:不要对GetDbConnection获取到的conn进行using或者调用Dispose,否则DbContext后续不能再进行使用了,会抛异常 string connectionString = new Code.Utility.DataBaseHelper().ConnectionString; using (var conn = new System.Data.SqlClient.SqlConnection(connectionString)) { conn.Open(); using (var command = conn.CreateCommand()) { command.CommandText = sql; command.Parameters.AddRange(parameters); var propts = typeof(T).GetProperties(); var rtnList = new List <T>(); T model; object val; using (var reader = command.ExecuteReader()) { while (reader.Read()) { model = new T(); foreach (var l in propts) { try { val = reader[l.Name]; if (val == DBNull.Value) { l.SetValue(model, null); } else { l.SetValue(model, val); } } catch { } } rtnList.Add(model); } } return(rtnList); } } }
public ChargeController(Codes.Utility.XPay.AliPay aliPay, IConfiguration config, CHIS.DbContext.CHISEntitiesSqlServer db, ChangePayService paySvr , LoginService loginSvr , NotifyService notifySvr , WeChatService weChatSvr , AccessService accSvr , DoctorService docSvr) : base(db) { _aliPay = aliPay; _config = config; this.db = db; _paySvr = paySvr; _loginSvr = loginSvr; _notifySvr = notifySvr; _weChatSvr = weChatSvr; _docSvr = docSvr; _accSvr = accSvr; }
/// <summary> /// 添加或者更新一个实体 /// </summary> public static T Upsert <T>(this CHIS.DbContext.CHISEntitiesSqlServer db, T entity) where T : class { try { var r = db.Update(entity).Entity; db.SaveChanges(); return(r); } catch { return(db.AddSave(entity)); } }
public ToolsController(IHostingEnvironment env, CHIS.DbContext.CHISEntitiesSqlServer db) : base(db) { this._env = env; }
public Search(CHIS.DbContext.CHISEntitiesSqlServer db , Services.DoctorService docSvr) : base(db) { _docSvr = docSvr; }