PageRenderTime 17ms CodeModel.GetById 10ms app.highlight 4ms RepoModel.GetById 1ms app.codeStats 0ms

/Docs/07-Implementacion/Source/trunk/EDUAR_actual/EDUAR/EDUAR_DataAccess/Shared/DAHelper.cs

http://blpm.googlecode.com/
C# | 59 lines | 34 code | 10 blank | 15 comment | 2 complexity | 4bcbadcc8d549bb60a87d1080d4fe186 MD5 | raw file
 1using System;
 2using System.Data;
 3using Microsoft.Practices.EnterpriseLibrary.Data;
 4
 5namespace EDUAR_DataAccess.Shared
 6{
 7    /// <summary>
 8    /// Clase que ofrece funcionalidad común al proyecto
 9    /// </summary>
10    public class DAHelper
11    {
12        #region Métodos Públicos
13
14        /// <summary>
15        /// Método estático que obtiene un objeto DataBase en función del connectionstring con name "EDUAR_Connectionstring"
16        /// </summary>
17        /// <returns>Objeto de tipo DataBase</returns>
18        public static Database GetDataBaseFromWebConfig()
19        {
20            return DatabaseFactory.CreateDatabase("EDUAR_ConnectionString");
21        }
22
23        /// <summary>
24        /// Método estático que obtiene un objeto DataBase en función del connectionstring de acuerdo al parametro
25        /// </summary>
26        /// <returns>Objeto de tipo DataBase</returns>
27        public static Database GetDataBaseFromWebConfig(string cadenaConexion)
28        {
29            return DatabaseFactory.CreateDatabase(cadenaConexion);
30        }
31
32
33        /// <summary>
34        /// Método estático que obtiene un objeto DataTable paginado segun los  parametros
35        /// </summary>
36        /// <returns>Objeto de tipo DataBase</returns>
37        public static DataTable ObtenerTablaPaginada(DataTable tablaSinPaginar, Int32 paginaActual, Int32 paginacionTamańo, string ordenamiento)
38        {
39            DataTable dtFiltrada = tablaSinPaginar.Clone();
40
41            DataView vista = tablaSinPaginar.DefaultView;
42            vista.Sort =ordenamiento ;
43
44            Int32 rowDesde = (paginaActual*paginacionTamańo) - paginacionTamańo;
45            Int32 rowHasta = (paginaActual*paginacionTamańo);
46
47            for (Int32 i = rowDesde; i < rowHasta; i++)
48            {
49                if(tablaSinPaginar.Rows.Count <=i)
50                    break;
51
52                dtFiltrada.ImportRow(vista.Table.Rows[i]);
53            }
54
55            return dtFiltrada;
56        }
57        #endregion
58    }
59}