lightswitch zero code - · pdf filelas relaciones con datos esternos no soportan...

117
© Copyright 2009 Avanade Inc. All Rights Reserved. The Avanade name and logo are registered trademarks in the US and other countries. LightSwitch + Azure + … ZERO CODE Mayo 2011 Bruno Capuano @elbruno MVP – Visual Studio ALM [email protected] Avanade Juan Luis Guerrero @juanluelguerre [email protected] Avanade

Upload: hoangdieu

Post on 01-Feb-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

The Avanade name and logo are registered trademarks in the US and other countries.

LightSwitch + Azure + … ZERO CODE

Mayo 2011 Bruno Capuano @elbruno MVP – Visual Studio ALM [email protected] Avanade

Juan Luis Guerrero @juanluelguerre [email protected] Avanade

Page 2: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

• ¿Qué es LightSwitch?

• Introducción a LightSwitch

• Trabajando con datos en LightSwitch

• Trabajando con formularios en LightSwitch

• Consultas de datos en LightSwitch

• Agregando código en LightSwitch

• Seguridad en LightSwitch

• Desplegando aplicaciones en LightSwitch

• Extensibilidad en LightSwitch

• Ejemplos de Extensibilidad

Agenda - LightSwitch

2

Page 3: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

• ¿Qué es el CLOUD?

• Casos de uso para la nube

• Tipos de Cloud

• Tipos de Servicios

– SaaS

– IaaS

– PaaS

– Windows Azure Platform

Agenda - Azure

3

Page 4: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

¿Qué es LightSwitch?

4

Page 5: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Los programadores nos queremos quitar problemas de nuestro día a día

Page 6: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

¿Qué es LightSwitch?

Es una nueva herramienta que pemite construir aplicaciones de negocio para Windows y para Cloud de una forma

fácil y rápida

Page 7: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Aplicaciones

Datos

+

Formularios

=

Page 8: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Una nueva forma de crear aplicaciones

Agregar Data Source… Modelo de Datos Agregar Formulario

F5

Run

Debug

Page 9: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

El ciclo de vida de LightSwitch

Inicio

Definir las estructuras de datos

Crear formularios para las tareas más comunes

Estabilización

Introducir lógica de negocio

Personalizar los formularios

Definir custom queries

Extensibilidad

Conocer las opciones de extensibilidad

Crear controles personalizados (por ej, en SL)

Integrar con Data Sources no estándares

Page 10: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Introducción a LightSwitch

10

Page 11: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Orígenes de Datos

Los datos son las bases de las aplicaciones en LS

Con LS es posible

• Conectar a bases de datos existentes

• Crear nuevas tablas

• Crear relaciones entre tablas

• Inclusive entre diferentes bases de datos

Utilizando los orígenes de datos, es posible

• Realizar validaciones de campos

• Procesar conjuntos de datos con contexto de transacción

• Trabajar con chequeos de concurrencia

Page 12: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Orígenes de Datos

LightSwitch puede utilizar como un origen de datos

Una base de datos SQL Server

Una lista de SharePoint

Un servicio WCF RIA Service

LightSwitch posee una base de datos interna, que se utiliza para

Almacenamiento de los valores de configuración

Entidades personalizadas

Page 13: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Orígenes de Datos

LightSwitch permite definir relaciones entre diferentes elementos

Si los elementos están en la base de datos interna

No funciona entre 2 elementos externos

Funciona entre 2 tipos diferentes

Page 14: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Formularios

Los formularios permiten mostrar datos

Una aplicación de LightSwitch está compuesta por una serie de formularios

Para crear un formulario:

Se debe seleccionar el tipo de formulario

Seleccionar los datos que se mostrarán en el formulario

Compilar

Es posible personalizar los formularios:

En su look and feel

En los comandos de ejecución

...

Page 15: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Formularios

Tipos de formularios en LightSwitch Beta 2:

New Data Screen

Search Data Screen

Details Screen

Editable Grid Screen

List and Details Screen

Personalizados!

Page 16: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Formularios

Es posible personalizar la apariencia de los formularios:

Utilizando el Screen Designer en Visual Studio 2010

Customization Mode Screen (Run time, sends back the changes to Visual Studio)

Page 17: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Consultas (queries)

Una consulta en LightSwitch retorna datos que se corresponden con un determinado criterio

Por ejemplo, retornar todos los productos en una categoría específica

LightSwith posee un diseñador propio para las consultas

Una consulta se convierte en parte del modelo

Se utilizan para crear y definir los formularios

Page 18: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

18

Page 19: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Trabajando con datos en LightSwitch

19

Page 20: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Trabajando con Datos

El diseñador de entidades se utiliza para crear y dar formato a los elementos de datos

Permite cosas muy útiles para un usuario final, por ejemplo definir nombres con espacios

Los tipos de negocio están definidos en una capa superior de abstracción que los tipos normales de datos

Validaciones Permiten aplicar las validaciones por defecto de tipos

Permiten validaciones personalizadas como por ejemplo en un campo de tipo Email

Summary properties Pueden ser una propiedad calculada

Requiren codificación

Y más Los IDs en las entidades por defecto son enteros

Los campos pueden tener una lista asociada de valores

Es posible definir si se muestra o se oculta un elemento en un formulario

Page 21: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Ordenar y filtrar datos

Para estos escenarios, se debe trabajar con consultas (queries)

Pueden ser creadas específicamente para un formulario o a nivel de entidad para ser utilizadas en toda la aplicación

Page 22: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Tipos de Datos

Los datos se pueden “mezclar” entre

Datos locales (internos)

Datos externos

Es posible crear relaciones entre

Datos internos y datos internos

Datos internos y datos externos

LightSwitch no puede cambiar un modelo de datos externos

Los links en datos internos se visualizan con líneas punteadas

Los datos extenos se relación a através de Foreign key

Las relaciones con datos esternos no soportan transacciones

Page 23: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Trabajando con Datos

• LightSwitch genera entidades y tipos que nos ayudan a describir nuestros datos

– Tabla de Alumnos Entidad de Alumnos

Page 24: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Trabajando con Datos

Aplicación (Application)

Es el objeto de mayor nivbel

Permite acceder a los objetos dentro de la aplicación

Puede ser utilizada para retornar el usuario activo

Data Workspace

DataWorkspace es “top level” para todos los accesos a datos dentro de la aplicación

Contiene propiedades para cada origen de datos (Data Source)

Data Workspace, ejemplos

Default: ApplicationData

External: XXXData

Page 25: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Trabajando con Datos

Data Source Existe un data source por cada objeto en la aplicación

Contienen propiedades que permiten acceder a las entidades y ejecutar los métodos para ejecutar las queries

Data Sources, ejecución de Queries

Los “Entity Set” retorna una colección de entidades

Las funciones para las consultas retornan los datos definidos en las mismas

<Entity Name>_Single

<Entity Name>_SingleOrDefault

EntityObject Se genera para cada entidad en una colección de entidades

Contiene funciones para eliminar, actualizar y trabajar con los datos de una entidad

Pueden ser ejecutadas a través de los métodos de una entidad

Page 26: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Tipos de datos Externos

LightSwitch puede contarse con

Bases de datos de SQL Server

Servicios WCF RIA Services

Listas SharePoint List

Odata (no nativamente, con un poco de código)

...

Page 27: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

27

Page 28: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Trabajando con Formularios en LightSwitch

28

Page 29: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Diseñador de Formularios

LightSwitch no posee una interfaz de diseño basada en Drag & Drop

El diseñador de formularios realiza todo el trabajo

Aunque es posible realizar pequeñas personalizaciones sobre el mismo

Con el diseñador de formularios es posible

Agregar y eliminar elementos de un formulario

Agregar Botones

Agregar elementos

Agregar controles personalizados

Modificar la posición de los elementos en el form

Page 30: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Diseño de Formularios en tiempo de ejecución

Los formularios pueden ser editados en tiempo de ejecución durante la depuracion

Los cambios se envian a Visual Studio 2010

Es muy útil para tener un “live preview” de la aplicación

También se presentan los datos con los que trabaja la aplicación

Page 31: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Por defecto se realizan ls búsquedas teniendo en cuenta todos los campos

Siempre es posible exportar a Excel

Formulario de búsqueda

Page 32: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Existe también la plantilla para editar en un mismo formulario datos en modo “Master-Detail”

Formularios Maestro-Detalle

Page 33: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

33

Page 34: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Consultas en LightSwitch

34

Page 35: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Diseñador gráfico para las consultas, con soporte para:

Filtros

Ordenación de Datos

Trabajo con parámetros

Extensiones de código: .Count(), Sum(), etc.

Diseñador de Consultas

Page 36: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

36

Page 37: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Agregando código en LightSwitch

37

Page 38: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Edición de código en LightSwitch

El código se utiliza para

Reglas de negocio

Validaciones

Etc.

LightSwitch utiliza el editor de VS para el código con las capacidades que brinda el mismo

C# or VB

IntelliSense

Silverlight

La mayoría del código se agrega en

Entidades

Consultas

Formularios

Por ejemplo, <ScreenName>_CanRun() puede ser utilziado para verificar permisos de ejecución

Page 39: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Eventos cuando se trabaja con Datos

Lo métodos generales de trabajo con datos se ejecutan cuando un se crea, modifica, o elimina información.

Los métodos de control de acceso se ejecutan antes de la ejecución de los métodos generales que permiten crear, modificar, o eliminar información.

Los métodos de consulta se ejecutan contra un Data Source para retornar un set de datos.

Los métodos de control de acceso para las consultas se ejecutan antes de la ejecución de las mismas.

Las propiedades y sus ´métodos se ejecutan cuando se modifican las mismas.

Page 40: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Eventos en Formularios

Los eventos asociados con botones se lanzan cuando se realiza un clic sobre el botón

Los eventos generales se invocan cuando se carga o se almacena información

Los eventos generales también se invocan cuando se cierra un formulario

Los eventos de control de acceso permiten verificar si un usuario tiene permisos para ejecutar una tarea

Los eventos relacionados con las colecciones se invocan cuando se modifican los datos de la misma

Page 41: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Utilizando código es posible modificar la apariencia y el comportamiento de un formulario

Es posible mostrar u ocultar elementos

Definir valores por defecto desde el código

Código en Formularios

Page 42: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

42

Page 43: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Seguridad en LightSwitch

43

Page 44: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Existen 3 opciones en Beta 2

Sin autenticación

Utilizando Forms Authentication

Utilizando Windows Authenticacion

Authentication in LightSwitch

Page 45: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

La seguridad consiste en definir los permisos para la aplicación

Es tarea del desarrollador definir estos permisos

Es posible verificar por código estos permisos

Es posible definir permisos especiales para el modo depuración

Permisos en LightSwitch

Page 46: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

46

Page 47: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Desplegando aplicaciones con LightSwitch

47

Page 48: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Opciones de Despliegue

Desktop client

Despliegue de una aplicación 2 capas. La aplicación se ejecuta como una Windows Application, y la base de datos y los componentes del servidor se acceden a través de una red local en un único server

Desktop client

Despliegue de una aplicación 3 capas. La aplicación se ejecuta como una Windows Application, y los componentes de aplicación y la base de datos se ejecutan utilizando Internet Information Services (IIS) o un host en Windows Azure

Browser client

Despliegue de una aplicación 3 capas. La aplicación se ejecuta como una aplicación Silverlight para Internet Explorer, y los componentes de aplicación y la base de datos se ejecutan utilizando Internet Information Services (IIS) o un host en Windows Azure

Page 49: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Despliegue en 2 capas

Silverlight 4 Out-Of-Browser App .NET Framework 4.0

All LightSwitch Components (DLLs)

Page 50: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Los clientes pueden estar en una red local o internet

Silverlight 4 Out-Of-Browser App

(Office Integration possible)

Internet Information Server (IIS) NET Framework 4.0

LightSwitch Middle-tier components

Despliegue en 3 capas, con Windows App.

Page 51: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Despliegue en 3 capas, con Web App.

Silverlight 4 Browser App

Internet Information Server (IIS) NET Framework 4.0

LightSwitch Middle-tier components

Los clientes pueden estar en una red local o internet

Page 52: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Publica una aplicación a Windows Azure

Page 53: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

53

Page 54: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Extensibilidad en LightSwitch

54

Page 55: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

¿Qué se puede extender?

Controles

• Basados en controles Silverlight

Plantillas de Formularios

• Creación de nuevas plantillas

Tipos de Datos

• Personalizables para mejorar la integración y visualización de datos

Themes

• Plantillas de presentación

• Paletas de colores para controles y para el Shell

Shell

• Crear un skin único para una aplicación

Orígenes de datos personalizados

• Extender para integrar nuevas fuentes de Datos

• La opción siempre es utilizar servicion WCF RIA Services

Siempre utilizando

Visual Studio 2010

Page 56: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Es posible combinar todos los tipos de extensiones

Una extensión puede modificar el Shell y una navegación especial para una solución de gestión de cuentas

Una extensión solo puede modificar el Theme de la aplicación

Una extensión puede modificar el Theme y además agregar la capacidad de trabajar con un Custom Data Source para obtener datos desde una interfaz no estándard

Extendiendo LightSwitch

Page 57: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Ejemplos de Extensibilidad

57

Page 58: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Utilización de controles personalizados

Page 59: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Un tipo de dato de negocio, provee un mecanismo para formatear, visualizar y almacenar información de un determinado tipo

Un ejemplo puede ser un formato de una cuenta bancaria, o una dirección de EMail

Utilización de tipos de negocio específicos

Visualizers (Editor/Viewer

controls)

Formating

Validation

Client

Formating

Validation

Server (Attributes)

Page 60: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Plantillas de formularios

Page 61: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Shell

Page 62: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Theme

Page 63: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Orígenes de datos personalizados

Page 64: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

64

Page 65: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

El nuevo camino, Access To SQL

65

Page 67: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Flujo de Migración: Parte I

67

SSMA: Microsoft SQL Server Migration Assistant 2008 for Access

Page 68: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Flujo de Migración: Parte I (Cont.)

68

Page 69: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

69

Page 70: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

WCF RIA Services Entity Framework

70

Page 71: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

WCF RIA Services

Tecnología RAD basada en

Servicio WCF

Facilidady productividad en el desarrollo

«Time to market»

End-to-end de datos (Data Driven)

71

Page 72: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

WCF RIA Services en Visual Studio

72

Page 73: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

WCF RIA Services en Excel y más…

• EntityFramework

– Acceso directo a SQL Server

• RIA Services

– Expone cualquier información a través de RIA Services con OData.

– PowerPivot

– Excel 2010

– SQL Server 2008 R2

73

Page 74: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO 4 SQL + EF + RIA

74

Page 75: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

The Avanade name and logo are registered trademarks in the US and other countries.

Cloud Compunting Introducción a Windows Azure

Mayo 2011 Bruno Capuano @elbruno MVP – Visual Studio ALM [email protected] Avanade

Juan Luis Guerrero @juanluelguerre [email protected] Avanade

Page 76: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

• ¿Qué es el CLOUD?

• Casos de uso para la nube

• Tipos de Cloud

• Tipos de Servicios

– SaaS

– IaaS

– PaaS

– Windows Azure Platform

Agenda - Azure

76

Page 77: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

La nube es Internet

Page 78: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Ya hace tiempo que la conocemos y usamos

78

(15 años) 450M+

Usuarios activos

(13 años) 550M

usuarios/mes

(12 años) El servicio en la nube no- ICP/IP más

grande x100M

usuarios

(11 años) 320M+

usuarios activos

(11 años) 2B

queries/mes

(15 años) 450M+

Usuarios activos

(7 años) 5B minutos de conf/año

(6 años) 4B emails/día

Page 79: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Casos de uso/patrones óptimos de la nube - On-Off - De crecimiento rápido - Con picos - predecibles - impredecibles

79

Page 80: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Patrones de trabajo óptimos para la nube I

Uso

Uso

de

Rec

urs

os

Tiempo

Media

Periodo de

Inactividad

“On y Off “ Cargas de trabajo On y Off (ej.:

procesos batch).

Se desaprovechan capacidades

sobredimensionadas.

El „Time to market‟ impacta mucho

Ejs.: Declaración de la Renta

Aplicaciones de recalculo de crédito

financiero cada mes.

Aplicaciones que se activan en los

cierres de mes o de año, loterías,

rebajas, etc.

Uso Medio

Tiempo

“Crecimiento Rápido“ Los Servicios con éxito necesitan

crecer .

Escalar y crecer es un reto de IT

Mucho tiempo de desarrollo en

aplicaciones escalables.

Ejs.: Nueva unidad de negocio, Fusiones y

Adquisiciones, Flickr, facebook, etc.

Uso

de

Rec

urs

os

Page 81: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Patrones de trabajo óptimos para la nube II

Tiempo

“Picos Impredecibles“

Uso Medio

Picos de demanda inesperados

Los picos no esperados impactan en

rendimiento

No se puede sobredimensionar

hardware solo para estos casos

Ejs: Sistema de respuesta a emergencias

Sistema de prioridad a eventos actuales

Tiempo

Uso Medio

“Picos Predecibles“ Servicios estacionales

Picos con demanda de

incrementos periodicos

Complejidad en IT y capacidad

desperdiciada

Ejs. : Procesamiento de nóminas

Ofertas de vuelos

Matricula universitaria.

Uso

de

Rec

urs

os

U

so

de

Rec

urs

os

Page 82: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Tipos de cloud

82

Page 83: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Tipos de cloud

Page 84: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Son administradas por el proveedor.

Sin inversión inicial.

No hay gastos de mantenimiento.

Pueden existir aplicaciones de otros clientes dentro de los servidores.

La plataforma se encuentra en las instalaciones del proveedor.

Nubes públicas

Page 85: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Son administradas por el cliente.

Mayor control.

Es necesaria una inversión inicial.

•Gastos de mantenimiento.

•Un solo cliente.

Infraestructuras on-premise.

Son propietarios de la infraestructura.

Nubes privadas

Page 86: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Opción intermedia entre las nubes públicas y privadas.

La empresa mantiene el control de sus principales aplicaciones.

Nubes híbridas

Page 87: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Tipos de Servicios

87

Page 88: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

La plataforma de Widnows

Azure llega hasta aquí

IT Tradicional

Almacenam.

Servidores

Redes

S/O

Middleware

Virtualización

Datos

Aplicaciones

Runtimes

IaaS

Almacenam.

Servidores

Redes

S/O

Middleware

Virtualización

Datos

Aplicaciones

Runtimes

PaaS

Almacenam.

Servidores

Redes

S/O

Middleware

Virtualización

Aplicaciones

Runtimes

Datos

SaaS

Almacenam.

Servidores

Redes

S/O

Middlew

Virtualización

Aplicaciones

Runtime

Datos

Middleware

Aplicaciones

Runtimes

Datos

Gestio

nado p

or e

l pro

veedor

Gestio

nado

por e

l pro

veedor

Ge

stio

na

do p

or e

l pro

ve

ed

or

Taxonomía Cloud Computing

Page 89: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Microsoft VS otros proveedores

89

Page 90: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

~100 Data Centers distribuídos alrededor del mundo

Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs

Page 91: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Hosting VS Cloud

• Virtualizado y dinámico

• Escalable y Disponible

• Abstracto respecto a la

infraestructura

• Elastico !!!

• „Self-Service’ !!!

• Pagas según necesites.

(“Pay as you go”)

Servidores en CPDs

propios Hosting de Servidores

/VMs

„Cloud‟

• Tus propios servidores,

conectividad, software,

etc.

• Control Completo

• Responsabilidad Total

• Capacidades „Estáticas‟

• Grandes bloques de

inversión en

infraestructura

• Alquiler de Servidores,

conectividad y software

• Menos control

• Menos responsabilidad

• Menos costes iniciales

• Mas flexible

• Pago por capacidad

fija, incluso si está

„parado‟.

HIERRO PAGAS Y

NO USAS

Capacidad

«Infinita»

Page 92: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Conclusiones

92

Page 93: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Inconvenientes del Cloud Computing

Percepción de inseguridad

Dependencia de Internet

Dependencia de un proveedor

Sensación de pérdida del control

93

Page 94: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Claves/beneficios del Cloud Computing

• Menor coste (capital) en infraestructura (Minimo soporte TI)

• Menor mantenimiento y costes ("pay-as-you-go") Reducción de costes

• Capacidad sólo cuando se necesita

• Habilidad para manejar cambios esperados o no esperados ante cargas

• Alta agilidad en el negocio

Elasticidad/Escalabilidad

• Acelera el deployment entre entornos ("ready to go")

• Mayor rapidez en la disponibilidad hacia los clientes

Velocidad de Mercado (Time to Market)

• Incremento de la capacidad de la infraestructura física actual

• Evita el aprovisionamiento y el pago en por picos

• "Infinita" capacidad de computación bajo demanda

Alto rendimiento de computación

94

Page 95: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Windows AZURE

95

Page 96: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Windows Azure Platform

96

Page 97: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Windows Azure

Cómputación

Web Role

Worker Role

Almacenamiento

Blobs Tablas Colas

Fabric Controller

Almacenar grandes cantidades de

datos (en cualquier formato) sólo

pagando por lo que se usa o

almacena.

Automatiza el equilibrio de

carga y calcula la ampliación

de recursos.

Los desarrolladores

podemos crear

aplicaciones para que se

ejecuten en Windows

Azure.

Seguridad y

caracteristicas de

control:

Autenticación,

encriptación de

almacenamiento,…

Geo-

Localización:

Datacenters

geograficamente

distribuidos

Page 98: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

SQL Azure

Page 99: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

AppFabric services

Page 100: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Comunicación segura entre aplicaciones atravesando NATs, Firewalls, etc.

Services Bus

Page 101: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Servicio que nos ayuda a abstraer la autenticación de nuestras aplicaciones.

Access Control

Page 102: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Sistema de caché distribuido para Windows Azure y SQL Azure.

Caching

Page 103: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Integrar nuestras aplicaciones en Windows Azure con otras expuestas en SaaS de terceros

Integración

Page 104: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Automatización del despliegue y la administración sin necesidad de manuales

para la puesta de producción.

Composite App

Page 105: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Máquinas virtuales de la nube

Diferentes números de instancias

Trazas de diagnostico

Compute Emulator

Entorno local de pruebas

Blobs

Queues

Tables

Storage Emulator

Page 106: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved. 106

Una Subscripcíon y portal,

para gobernarlo

TODO

Page 107: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

LigthSwtich “ON THE CLOUD”

Windows AZURE

107

Page 108: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

El nuevo camino, Access To SQL Azure

108

Page 109: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Flujo de Migración: Parte II «El proceso continua»

109

SSMA: Microsoft SQL Server Migration Assistant 2008 for Access

Page 110: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved. 110

Demo

110

Page 111: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

SQL Azure & Entity Framework & RIA Services

111

Page 112: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO

112

Page 113: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Deploy en Azure

113

Page 114: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

DEMO Deploy en Azure

114

Page 115: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved. 115

Page 116: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved.

Referencias

• Web Oficial MSDN http://msdn.microsoft.com/en-us/library/ff851953.aspx

• LightSwitch Course Manager End-to-End Application http://code.msdn.microsoft.com/LightSwitch-Course-Manager-c5608897

• Visual Studio LightSwitch Vision Clinic Walkthrough & Sample http://code.msdn.microsoft.com/Visual-Studio-LightSwitch-c8e92df4

• Excel Importer for Visual Studio LightSwitch http://code.msdn.microsoft.com/Excel-Importer-for-Visual-61dd4a90

• LightSwitch Active Directory Sample http://code.msdn.microsoft.com/LightSwitch-Active-5092eaa8

• Filter Control for Visual Studio LightSwitch http://code.msdn.microsoft.com/Filter-Control-for-Visual-90fb8e93

116

Page 117: Lightswitch Zero Code -   · PDF fileLas relaciones con datos esternos no soportan transacciones ... C# or VB IntelliSense ... NET Framework 4.0

© Copyright 2009 Avanade Inc. All Rights Reserved. 117