framework .net 3.5 15 configuración y despliegue de soluciones

30
Introducción a la configuración de aplicaciones Historia de la configuración de aplicaciones Los archivos de configuración de .NET Uso de los archivos de configuración de .NET Introducción a los archivos de configuración Leer y escribir archivos de configuración Dar seguridad a los datos confidenciales Introducción a los ensamblados Introducción a MSBuild Desplegando aplicaciones .NET mediante ClickOnce Desplegando aplicaciones .NET mediante Windows Installer

Upload: antonio-palomares-sender

Post on 17-Jul-2015

458 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Introducción a la configuración de aplicacionesHistoria de la configuración de aplicacionesLos archivos de configuración de .NET

Uso de los archivos de configuración de .NETIntroducción a los archivos de configuraciónLeer y escribir archivos de configuraciónDar seguridad a los datos confidenciales

Introducción a los ensambladosIntroducción a MSBuildDesplegando aplicaciones .NET mediante ClickOnceDesplegando aplicaciones .NET mediante Windows Installer

Page 2: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Historia de la configuración de aplicaciones

El almacenamiento de datos fuera del código de la aplicación para permitir cambios al comportamiento de la misma sin tener que modificar y recompilar el código siempre ha sido un requisito importante de las aplicaciones

La historia de los archivos de configuración incluye:

Configuración con archivos .ini

Configuración mediante el registro

Configuración con archivos de configuración personalizados

Page 3: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Uso de los archivos de configuración de .NET

Archivos de configuración XML:

Influencia en cómo funcionan las aplicaciones .NETTienen un esquema de configuración conocido en el que diferentes elementos de configuración afectan diferentes características

Archivos de configuración y ubicaciones:

Las configuraciones para las aplicaciones se recuperan de varias ubicacionesPor ejemplo: El archivo web.config de las aplicaciones ASP.NET se aplica después que el machine.config , del directorio de configuración de .NET

<configuration>

<system.web><compilation debug="true“/></system.web></configuration>

[Archivo de configuración]

Page 4: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Introducción a los elementos de configuración

Muchos desarrolladores modifican habitualmente los siguientes elementos de configuración:

Configuración del esquema de aplicación

Guarda los valores de configuración a nivel aplicación y de usuario.

Define valores del diseñador a nivel de aplicación y de formulario

Una vez definidos, lo valores son visibles desde el intellisense

Las clases de Trace y Debug

Las cadenas de conexión

Almacenar las cadenas de conexión en un archivo de configuración es una práctica muy común y recomendada

Configuración del estado de sesión

ASP.NET soporta tres modos de estado de sesión (InProc, StateServer y SqlServer)

Page 5: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Leer y escribir archivos de configuración

Leer cadenas de conexión:

Leer valores de aplicación:

string Value = ConfigurationManager.AppSettings["ConfigName"];

Dim Value as string = ConfigurationManager.AppSettings("ConfigName")

[Visual C#]

[Visual Basic]

connString = System.Configuration.ConnectionStrings["NorthwindConnectionString"];

[Visual C#]

connString = System.Configuration.ConnectionStrings("NorthwindConnectionString")

[Visual Basic]

Page 6: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Leer y escribir archivos de configuración

Leer valores de aplicación:

//Leer un valor de aplicación.String filePath = Properties.Settings.Default.FilePath.ToString();

//Leer una cadena de conexión.String conStr = Properties.Settings.Default.AdvWorks.ToString();

[Visual C#]

‘Leer un valor de aplicaciónDim filePath As String = My.Settings.FilePath

‘Leer una cadena de conexiónDim conStr As String = My.Settings.advWorks

[Visual Basic]

Page 7: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Dar seguridad a los datos confidenciales

aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" -prov "RsaProtectedConfigurationProvider"

[Encriptado de la sección de cadenas de conexión]

Los archivos de configuración tienen, a menudo, información confidencial, la cual deberemos asegurar:

Mediante los métodos encrypt y store

Mediante los métodos encrypting y decrypting de ASP.NET

Page 8: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Introducción a los ensamblados

¿Qué es un ensamblado?

¿Qué es la Global Assembly Cache?

Como posponer la firma de un ensamblado

Versionado de ensamblados

Page 9: Framework .NET 3.5 15 Configuración y despliegue de soluciones

¿Qué es un ensamblado?

Contenido de los ensamblados:

Código IL, recursos, metadatos de tipos

Límites de los ensamblados:

Seguridad, tipos, ámbito de referencia

Beneficios de los ensamblados:

Unidades de despliegue, versiones, ejecuciones concurrentes en paralelo

Es una colección de tipos y recursos que forman una unidad de funcionalidad

Page 10: Framework .NET 3.5 15 Configuración y despliegue de soluciones

¿Qué es la Global Assembly Cache?

Almacena los ensamblados compartidos por múltiples aplicaciones

Beneficios:

Despliegues y ejecuciones concurrentes, tiempos de carga y búsqueda mejorados, reducción en el consumo de memoria

Instalación:

Hay cuatro formas de instalar un ensamblado en la GACAunque el método recomendado es Windows Installer

Page 11: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Como posponer la firma de un ensamblado

Pasos para posponer la firma de un ensamblado

En el explorador de soluciones pulsar el botón derecho sobre el proyecto y seleccionar propiedades

1

Seleccionar la pestaña firma (Signing)2

Seleccionar la casilla de firmar el ensamblado3

Especificar un archivo de clave4

Seleccionar la casilla de posponer firma5

Enviar el ensamblado a la firma antes del despliegue6

Útil cuando el desarrollador no dispone de la clave privada de la organización

Page 12: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Versionado de ensamblados

Versionado:

El manifiesto del ensamblado conserva el número de versiónEl cual está compuesto de cuatro fragmentos:

<versión principal>.<versión secundaria>.<número de compilación>.<número de revisión>

Direccionamiento de peticiones de enlace:

Crear un archivo de políticas de publicaciónUsar el elemento <bindingRedirect>

Utilizar cuando las aplicaciones compartan ensamblados comunes y una de las aplicaciones requiera cambios en uno de los ensamblados dependientes.

Page 13: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Introducción a MSBuild

¿Qué es MSBuild?

Cómo funciona MSBuild

Opciones de línea de comandos de MSBuild

MSBuild y Visual Studio 2008

Page 14: Framework .NET 3.5 15 Configuración y despliegue de soluciones

¿Qué es MSBuild?

Características de MSBuild :

Formato del archivo de proyecto basado en XMLHospedado por Visual Studio 2008Sintaxis de línea de comandos

La máquina de compilación de Microsoft (Microsoft Build Engine) es la plataforma de compilación para Visual Studio 2008

Page 15: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Como funciona MSBuild

Ejemplo:

<Target Name="MakeBuildDirectory">

<MakeDir

Directories="$(BuildDir)" />

</Target>

[XML]

Archivo de proyecto de MSBuild :

Ítems, propiedades, tareas, destinos

Características avanzadas:

Registros, procesamiento batch de tareas y destinos, modificadores de transformación

Page 16: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Opciones de línea de comandos de MSBuild

MSBuild MyProject.proj /t:rebuild

Msbuild SlnFolders.sln

/t:MyProject.proj:Rebuild;NewFolder\InSolutionFolder:Clean

MSBuild MyProject.proj /property:Configuration=Debug

La sintaxis especifica un archivo de proyecto y activadores (switches) opcionales

Efectúa una recompilación completa (indicado con el destino rebuild) :

Compila el proyecto MyProject.proj, después limpia el proyecto InSolutionFolder:

Compila el archivo MyProject.proj con la configuración de depuración:

Page 17: Framework .NET 3.5 15 Configuración y despliegue de soluciones

MSBuild y Visual Studio 2008

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets"/>

<Import

Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets"/>

[Visual C#]

[Visual Basic]

Cada proyecto importa archivos de destino genericos:

Visual Studio 2008 utiliza el formato de archivo de proyecto de s MSBuildVisual Studio 2008 almacena los valores de configuración del proyecto en el archivo .csproj o .vbproj

Page 18: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Despliegue de aplicaciones .NET mediante ClickOnce

¿Qué es ClickOnce?

Estrategias de despliegue y actualización de ClickOnce

Seguridad en el despliegue de ClickOnce

Page 19: Framework .NET 3.5 15 Configuración y despliegue de soluciones

¿Qué es ClickOnce?

Es una tecnología de despliegue suministrada por Visual Studio 2008:

Permite la creación de aplicaciones auto actualizablesUso dos archivos de manifiesto, manifiesto de aplicación y manifiesto de despliegue

Ventajas del despliegue ClickOnce :

Actualizaciones automáticasInstalación no administrativaAislamiento de aplicaciones

Page 20: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Estrategias de despliegue y actualización de ClickOnce

Estrategias de despliegue:

Instalación desde Web o un recurso de redInstalación desde CD o DVDArranque desde Web o un recurso de red

Estrategias de actualización:

Comprobación de actualizaciones tras el arranqueComprobación de actualizaciones en el arranqueSuministrar un interfaz de usuario para las actualizaciones

Page 21: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Seguridad en los despliegues ClickOnce

Las aplicaciones ClickOnce están sujetas a las restricciones de seguridad de acceso a código. Se deben modificar los valores de seguridad para asegurar que una aplicación sólo tenga los permisos que necesite para ejecutarse correctamente.

Para habilitar los valores de seguridad para una aplicación ClickOnce

Abrir las propiedades del proyecto.1

Seleccionar la pestaña de seguridad.2

Seleccionar Enable ClickOnce Security Settings3

Seleccionar This is a partial trust application4

Seleccionar un nivel de seguridad (zona)5

Page 22: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Despliegue de aplicaciones .NET mediante Windows Installer

Comparación entre los despliegues ClickOnce y WindowsInstaller

Tipos de proyectos de despliegue

Como crear un proyecto de Setup

Como crear un proyecto Merge Module

Editores de despliegue

Componentes de instalación

Como generar e instalar un proyecto de Setup

Publicación de aplicaciones Web

Page 23: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Comparación entre ClickOnce y Windows Installer

Característica ClickOnceWindows Installer

Recupera actualizaciones Web

Si No

Permite la instalación para múltiples usuarios

No Si

Suministra retroceso después de la instalación

Si No

Permite la instalación de archivos compartidos

No Si

Instala ensamblados a petición

Si No

Page 24: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Tipos de proyectos de despliegue

Windows Installer permite cinco tipos de proyectos de despliegue:

Proyectos CABProyectos Merge ModuleProyectos SetupSetup WizardProyectos Web Setup

Page 25: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Como crear un proyecto de Setup

Añadir un proyecto de Setup a la solución y crear un paquete de instalación que contenga archivos de Windows Installer

Para añadir ítems al proyecto

Abrir el editor del sistema de archivos1

Seleccionar la carpeta donde deseemos instalar el ítem2

En el menú Acción, seleccionar Añadir y elegir Project Output o Archivo

3

Seleccionar el ítem a añadir y pulsar OK4

Para crear un proyecto de Setup:

Crear un nuevo proyecto1

Seleccionar "Setup project" en la pestaña de plantillas del cuadro de diálogo "Nuevo Proyecto"

2

Page 26: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Como crear un proyecto Merge Module

Para empaquetar un componente ensamblado:

Crear el componente y compilar la .dll1

Añadir un proyecto merge module a la solución2

Añadir el componente al proyecto merge module3

Compilar el proyecto merge module4

Añadir el proyecto merge module a un proyecto Setup

5

Page 27: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Editores de despliegue

Editor Descripción

File SystemPermite añadir destinos de proyecto, archivos y otros ítems a un proyecto de despliegue

RegistryPermite acceder a los nodos y claves más habituales del registro

File TypesPermite definir nuevos tipos de archivo para configurar en el ordenador de destino

User InterfacePermite personalizar los mensajes e imágenes que verá el usuario en el asistente de instalación

Custom ActionsPermite incluir acciones personalizadas en el proyecto principal de setup

Launch ConditionsPermite definir condiciones para la instalación de la aplicación o ejecutar acciones personalizadas

Page 28: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Componentes de instalación

Utilizar componentes de instalación para crear recursos en el ordenador de destino

Hay cinco componentes de instalación predefinidos: EventLog, MessageQueue, PerformanceCounter, ServiceInstaller y ServiceProcessInstallerUtilizar el diseñador para añadir un componente de instalación al proyectoUtilice el editor de acciones personalizadas para añadir el componente a un proyecto de despliegue

Page 29: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Como construir e instalar un proyecto de Setup

Para compilar un proyecto de Setup :

En Visual Studio 2008, en el menú Compilar, seleccionar Compilar NombreProyecto

Para instalar la aplicación:

Ejecutar el archivo .msi en el ordenador de destinoo

En Visual Studio 2008, en el menú Proyecto, seleccionar Instalar

Page 30: Framework .NET 3.5 15 Configuración y despliegue de soluciones

Publicación de aplicaciones Web

Visual Studio 2008 permite la publicación de aplicaciones Web en varias ubicaciones

La publicación tiene las siguientes ventajas

Sitios HTTP (locales o remotos)Sitios FTPSistema de archivos

La precompilación comprueba los erroresLa velocidad inicial es rápida, ya que las páginas ya están compiladasNo es necesario desplegar el código de programación