示例#1
0
        public IEnumerable <TEntity> RunProc <TEntity>(string commandText, params SqlParameter[] parameters)
        {
            var items = new List <TEntity>();

            // command settings
            DbSqlCommand.Parameters.Clear();
            DbSqlCommand.CommandText = commandText;
            DbSqlCommand.CommandType = CommandType.StoredProcedure;

            // add params
            if (parameters?.Length > 0)
            {
                DbSqlCommand.Parameters.AddRange(parameters);
            }

            // open a connection
            if (DbSqlConnection.State == ConnectionState.Closed)
            {
                DbSqlConnection.Open();
            }

            // fetch record
            using (var data = DbSqlCommand.ExecuteReader())
            {
                while (data.Read())
                {
                    items.Add(MapEntity <TEntity>(data));
                }
            }

            return(items);
        }
示例#2
0
 public void SaveChanges()
 {
     try
     {
         DbSqlConnection.Open();
         for (int i = 0; i < ListSqlSentence.Count; i++)
         {
             ListSqlSentence[i].ExecuteNonQuery();
             ListFnActions[i]();
         }
     }
     catch (SqlException ex)
     {
         throw ex;
     }
     finally
     {
         if (DbSqlConnection.State == ConnectionState.Open)
         {
             DbSqlConnection.Close();
         }
         if (ListFnActions != null)
         {
             ListFnActions.Clear();
         }
         if (ListSqlSentence != null)
         {
             ListSqlSentence.Clear();
         }
     }
 }