public List <TResult> InvokeStoredProcedure <TParam, TResult>() where TParam : SPBase { string spName = DBMethod.GetSPName <TParam>(); List <TResult> list = Database.SqlQuery <TResult>(ParseSql(spName, null)).ToList(); return(list); }
/// <summary> /// Exec a SP querey that will return elements of the given type. /// </summary> /// <typeparam name="T1">the return elements of the given type</typeparam> /// <typeparam name="T2">the SP type</typeparam> /// <param name="sp">the sp entity</param> /// <returns></returns> /// <remarks></remarks> public List <TResult> InvokeStoredProcedure <TParam, TResult>(TParam sp) where TParam : SPBase { string spName = DBMethod.GetSPName <TParam>(); SqlParameter[] paras = DBMethod.GetSPParameters(sp); List <TResult> list = Database.SqlQuery <TResult>(ParseSql(spName, paras), paras).ToList(); return(list); }
/// <summary> /// Exec a SP without return /// </summary> /// <typeparam name="T">elements of the given type</typeparam> /// <param name="sp">the sp entity</param> /// <remarks></remarks> public void InvokeStoredProcedureNonQuery <T>(T sp) where T : SPBase { CheckSPArgument(sp); string spName = DBMethod.GetSPName <T>(); SqlParameter[] paras = DBMethod.GetSPParameters(sp); this.Database.ExecuteSqlCommand(ParseSql(spName, paras), paras); // set the return output value DBMethod.SetSPModelValueFormParameters(sp, paras); }