La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Facilitando la vida del desarrollador con Visual Studio 2005 Daniel A. Seara www.sqlu.com.

Presentaciones similares


Presentación del tema: "Facilitando la vida del desarrollador con Visual Studio 2005 Daniel A. Seara www.sqlu.com."— Transcripción de la presentación:

1 Facilitando la vida del desarrollador con Visual Studio 2005 Daniel A. Seara www.sqlu.com

2 Migrando desde SQL Server© 2000 A partir de una base previa –Es posible obtener un respaldo de una base de SQL 2000 en SQL 2005 –Y también se puede adjuntar una base de la versión anterior Es recomendable, pero no imprescindible, actualizar la versión de la base.

3 USE [master] GO EXEC dbo.sp_dbcmptlevel @dbname=N'PhoneServices', @new_cmptlevel=90 GO

4 Así era en 2000

5 Schemas Permiten agrupar información relacionada De esa manera, se mantiene mejor orden … y se puede administrar mejor la seguridad

6 Creando Esquemas USE [PhoneServices] GO CREATE SCHEMA [Geography] GO CREATE SCHEMA [Sales] GO CREATE SCHEMA [Operations] GO

7 Moviendo objetos a los esquemas ALTER SCHEMA [Sales] TRANSFER dbo.Customer GO ALTER SCHEMA [Sales] TRANSFER dbo.PayType GO ALTER SCHEMA [Sales] TRANSFER dbo.PayTypeByClient GO

8 Y así queda

9 Cosas del Sitio Web Presentación –Páginas maestras –Hoja de estilos –Skin

10 Páginas maestras Acomodar las cosas dentro de tablas No, repito NO cambiar estilos en tiempo de diseño –Usar una hoja de estilos Veremos luego, esto ayuda con los temas

11 Hoja de estilos Nunca, o sea NUNCA usar tamaños fijos –El usuario puede necesitar cambiar el tamaño de las fuentes Definir una clase para cada forma distinta de mostrar las cosas –Es fácil así reasignar la forma de presentación

12 Skin Define estándar de presentación de cualquier control –Facilita mantener normalizado el sitio –Es posible asignar nombres (SkinID) para definir distintas formas para el mismo control.NormalTextBox { background-color: goldenrod; }.NumericTextBox { background-color: goldenrod; text-align: right; }

13 Llevando los datos a las páginas SqlDataSource –Es fácil ¿Es fácil? –Súper RAD ¿En serio es tan rápido? –Se arma solito

14 Usando mis objetos de negocio Encapsulan la funcionalidad Permiten mayor control en lo que hay que hacer, cómo, cuándo y dónde Implican mayor trabajo de base.

15 Componentes base Como siempre un servicio de datos

16 Reglas Base Tranquilos. Veremos algunos detalles luego

17 Creando las reglas de este negocio Agregar una clase Heredar de baseEntity Implementar los métodos obligatorios –AssignTableName Retorna el nombre de la tabla a manipular –Application Dim mApp As Application Protected Overrides Property Application() As _ Desarrolladoras.Reglas.baseApplication Get If mApp Is Nothing Then mApp = New Application End If Return mApp End Get Set(ByVal value As _ Desarrolladoras.Reglas.baseApplication) mApp = value End Set End Property

18 Cada objeto expone sus valores como propiedades Los valores obtenidos desde la base para una entidad determianda están contenidos en un array de tipo Object –Values() Se exponen como propiedades independientes haciendo la conversión necesaria –Idea robada del DataTable de los dataset generados automáticamente _ Public Property LName() As String Get Try Return CType(MyBase.Field("LName"), String) Catch e As System.InvalidCastException Return String.Empty End Try End Get Set(ByVal value As String) MyBase.Field("LName") = value If Me.Status = Desarrolladoras.Reglas.EntityStatus.NotReaded _ OrElse _ Me.Status = Desarrolladoras.Reglas.EntityStatus.Unchanged Then _ Me.Status = Desarrolladoras.Reglas.EntityStatus.Modified End Set End Property

19 ¿Y como agregar este código? Snippet Editor –No viene con VB pero se consigue fácil (y gratis) http://msdn.microsoft.com/vbasic/downloads/tools/snippeteditor/ –Permite agregar snippets personalizados O modificar los existentes –Se pueden crear a cualquier nivel Clase Miembro Parte de un miembro

20 Obtener múltiples registros La regla de negocio puede exponer directamente un DataTable –Con las columnas resultantes de ejecutar el Procedimiento Almacenado –La nueva implementación de ADO vincula un DataTable a sus propios DataAdapters Pero pueden llenarse desde un componente de datos

21 Obtener múltiples registros ¿Y puedo tener un Dataset con todas las tablas y consultas de la base? –Si Pero no llenarlo –Permite tener todos los objetos de tipo DataTable definidos en un solo lugar También se pueden tener en DataSets que agrupen por funcionalidad O las tablas separadas

22 Exponer la vinculación Los orígenes de datos de ASP.Net 2.0 están pensados para múltiples registros –En contra de la regla de los ravioles Se debe exponer el objeto como si fuese una lista de instancias de sí mismo Public Function [Select]() As System.Collections.Generic.List(Of Customer) Dim l As New System.Collections.Generic.List(Of Customer) l.Add(Me) Return l End Function

23 Base de un ABM El usuario solicita –Ver los registros presentes Editar Agregar Eliminar

24 Implementación Multiview View1 GridView View2 FormView ObjectDataSource1 ObjectDataSource2

25 View1 Datasource que obtiene el DataTable con los registros GridView con las columnas que interesan –Un template con iconos para modificar y eliminar

26 View2 FormView –En modo Edit para la edición –En modo ReadOnly para confirmar eliminación DataSource que obtiene el método Select –Un List con un solo elemento –Codificar el evento ObjectCreating para asignar el objeto específico a editar Protected Sub ObjectDataSource2_ObjectCreating( _ ByVal sender As Object, _ ByVal e As System.Web.UI.WebControls.ObjectDataSourceEventArgs) _ Handles ObjectDataSource2.ObjectCreating e.ObjectInstance = myEnt End Sub

27 Actualización Codifica el evento ItemUpdating del FormView –El eventArgs recibe los nuevos valores ingresados por el usuario, por orden de posición de los campos Se puede usar un bucle para actualizar el objeto Persistir el objeto en edición entre llamadas –En Session –En ViewState –Page_Load –Page_PreRender

28 ¿Preguntas? Espero que ahora puedan descansar así


Descargar ppt "Facilitando la vida del desarrollador con Visual Studio 2005 Daniel A. Seara www.sqlu.com."

Presentaciones similares


Anuncios Google