Hola en este post, te explicare como crear un instalador desde Visual Studio 2010
Primero hay que crear el proyecto de instalación, este lo encuentras en Other Project Types -> Setup and Deployment ->Visual Studio Installer, dependiendo del proyecto es la opción que instalaras, por comodidad puedes usar la opcion de Setup Wizard, seguir las intrucciones, y a la hora de agregar archivos, seleccionas todos los archivos del proyecto que vas a instalar.
Hasta ahora todo parece sencillo, pero lo cierto es que si Construyes la Solución [F6], e Instalas (puedes ordenar en el Solution Explorer, Install) realmente no se ha instalado nada, asi que bien puedes mejor olvidar el Wizard y hacer todo sin el.

1. Crear la solucion [en este caso SETUP PROJECT]

crear instalador

crear instalador en visual studio 2010

Cuando te aparezca el proyecto creado creas una carpeta en Application Folder hacemos clic derecho Add -> File [agregar archivos], puedes agregar todo el proyecto seleccionando todos los archivos a la ves. en esa carpeta creamos una carpeta con los recursos que utilizara el proyecto en este caso con los iconos e imagenes

crear instalador en visual studio 2010

proyecto de instalación

Cuando los selecciones puede que encuentres archivos que no seleccionaste, esto es por que en el proyecto tienes dependencias a ciertas librerías que utilizaste en el desarrollo del proyecto y se van a necesitar cuando se instalen en una otra computadora, si construyes el proyecto e intentas instalar aun no funcionara (no te confíes si la computadora no tiene el Framework que utilizaste, no lo instala  con tu programa, este es un paso aparte, osea que abrirá la pagina de microsoft, donde descargarlo).

2. Configurar Datos del programa

Seleccionas el proyecto de SetupProyectoY en el Solution Explorer y en propiedades aparecerá toda la información del proyecto.

Propiedades del Instalador

Propiedades del Instalador

3. crear el Acceso directo

Ahora en User’s Programs Menu, creas una carpeta (no es necesario, pero queremos crear un orden en el menú, si el menú de inicio de Windows), asi que creas una carpeta con el nombre de tu empresa o negocio.
después seleccionas la carpeta, y en la derecha debe aparecer un area en blanco, con el Boton derecho seleccionas Create New Shortcut

Acceso Directo en Instalador

te aparecerán las carpetas del instalador, seleccionas Application Folder, en mi caso selecciono ProyectoY y el archivo principal del sistema (el nombre puede variar).
y aparecera [Shortcut to Proyecto.exe] te recomiendo que le cambies el nombre, al nombre del sistema.

4. Presiona F6 (es lo mismo de construir la solución).

5. ya puedes instalar, en el instalador veras la ruta que configuraste C:\Program Files\Sociedad Agricola viru S.A.\SuiteSecurity\ y se instalara sin problemas

Al ir al menu de Windos podras ver el acceso directo

A continuación se describen los pasos a seguir para instalar SQL Server 2005 en un Cluster MSCS, paso a paso, y pantalla a pantalla. Se aprovecha también, no sólo para indicar qué tenemos que hacer en cada pantalla, sino además explicar por qué tenemos que hacerlo, recalcando la importancia de muchos detalles que sin conocerlos se nos pasarían por alto. Esta instalación se realiza desde el CD1 (recordar que SQL Server 2005 está formado por 2 CDs). Iniciaremos la instalación desde el Nodo VSQL03, que para nosotros es el Nodo 1 (conceptualmente hablando). Recordar que el proceso de instalación de SQL Server 2005 realizará la instalación en todos lo Nodos del Cluster (al menos, en los que especifiquemos durante la instalación), por lo cual, sólo tendremos que ejecutar el proceso de instalación de SQL Server 2005 una única vez.

  • Insertar el CD 1 de SQL Server 2005, y ejecutar el programa de instalación.
  • Aceptar los términos de licencia. Click Next para continuar.
  • Instalación de Prerrequisitos. Si es la primera vez que se utiliza el instalador de SQL Server 2005, suele instalarse.Net Framework 2.0, Microsoft SQL Native Client, y Microsoft SQL Server 2005 Setup Support Files. Click Install, y una vez instalado, click Next para continuar. En las sucesivas utilizaciones del instalador, sólo se instala Microsoft SQL Server 2005 Setup Support Files.
  • Se inicia el asistente de instalación (Microsoft SQL Server Installation Wizard). Click Next para continuar.
  • En el diálogo System Configuration Check, comprobar los mensajes de errores y advertencias. Por ejemplo, si aparece una advertencia indicando que no tenemos instalado IIS, no debemos darle mayor importancia si no necesitamos IIS (ej: si no queremos instalar Reporting Services). Si todo está OK, entonces click Next para continuar.
  • Rellenar la información de Registro (Nombre y Compañía). No tiene mayor misterio. Click Next para continuar.
  • Especificar los componentes que se desean instalar (Components to Install). Seleccionaremos sólo SQL Server Database Services y Create a SQL Server failover cluster. Es importante tener en cuenta, que si no iniciamos el programa de instalación sobre un Nodo de un Cluster, la opción Create a SQL Server failover cluster no estará disponible (estará en gris y no la podremos seleccionar). Click Next para continuar.

Especificar el nombre de instancia deseado o bien una instancia por defecto (Instance Name). Esta decisión es de vital importancia, ya que no es posible renombrar una instancia de ya instalada, es decir, si nos equivocamos, tendremos que instalar una nueva instancia, mover los datos de una instancia a otra, y eliminar la antigua instancia (es bastante laborioso, si tenemos en cuenta todo: Inicios de Sesión, Jobs, Paquetes DTSX almacenados en MSDB, Servidores Vinculados, Bases de Datos de Usuario, etc.). También es interesante recordar que en un Cluster sólo es posible instalar una única Instancia por Defecto (Default Instance: MSSQLSERVER), aunque es posible instalar múltiples Instancias con Nombre.

Especificar el nombre del servidor virtual (Virtual Server Name) del Cluster. Esta pregunta sólo se realiza cuando la instalación se realiza sobre un Cluster. Cuando se trata de un servidor independiente, esta pantalla no aparece, y se utiliza el nombre de máquina para acceder a la Instancia (ej: ServerName para Instancia por Defecto y ServerName\InstanceName para Instancias con Nombre). Sin embargo, dado que un Cluster suele estar formado por múltiples máquinas (Nodos) ¿Qué valor utilizamos como ServerName? En este escenario, se utiliza un Nombre de Servidor Virtual, al cual se le asocia una Dirección IP Virtual, y sobre ambos se ejecuta SQL Server. De este modo, cuando el Grupo de Recursos del Cluster se está ejecutando sobre un Nodo del Cluster (ej: VSQL03), dicho Nodo posee dicho Nombre de Servidor Virtual y Dirección IP Virtual (de forma adicional a su Nombre de Máquina y Direcciones IP), y cuando se ejecuta sobre otro Nodo del Cluster, ocurre lo mismo con dicho Nodo (y el Nodo anterior deja de responder al Nombre de Servidor Virtual y Dirección IP Virtual). Así, en cualquier momento del tiempo, sólo puede haber un Nodo del Cluster que esté utilizando dicho Nombre de Servidor Virtual y Dirección IP Virtual (y en consecuencia, ejecutar la correspondiente Instancia de SQL Server). Es posible renombrar el Nombre del Servidor Virtual en un Cluster(si nos equivocamos), como se describe en How to: Rename a SQL Server Failover Cluster Instance , al contrario que ocurre con el Nombre de Instancia (que NO se puede renombrar). Para la realización de éste Artículo, utilizaré el nombre de servidor virtual VSQLClust.

Especificar la Dirección IP (Virtual Server Configuration). Esta pregunta sólo se realiza cuando la instalación se realiza sobre un Cluster. Cuando se trata de un servidor independiente, esta pantalla no aparece. En esta pantalla, se debe seleccionar la Red que se desea utilizar, y también la Dirección IP deseada (debe estar en el rango de dicha Red), Click Add para agregar la Dirección IP, y finalmente (excepto que se deseen utilizar múltiples direcciones IP) click Next para continuar. Es posible utilizar múltiples redes y múltiples direcciones IP, pero la realidad es que no es lo habitual. Es decir, lo habitual es tener un Cluster de dos Nodos y con dos redes (una red para dar servicio a los usuarios y otra red para la comunicación interna entre los Nodos del Cluster – IntraCluster Communications). Eso no quita que pueda haber casos en los que se utilice un Cluster con múltiples redes y múltiples direcciones IP. En cualquier caso, es interesante recordar que las redes disponibles en esta pantalla son aquellas redes que estén configuradas en Microsoft Cluster para comunicación con los clientes. Las redes configuradas exclusivamente para comunicación intra-cluster, no se mostrarán en esta pantalla.

Elegir el Grupo de Recursos del Cluster sobre el que se desea instalar SQL Server (Cluster Group), así como la ruta de instalación para los ficheros compartidos. Esta pregunta sólo se realiza cuando la instalación se realiza sobre un Cluster. Cuando se trata de un servidor independiente, esta pantalla no aparece, ya que es suficiente con indicar la ruta de instalación. Como hablamos anteriormente en este Artículo, antes de la instalación tendremos que haber creado el Grupo de Recursos deseados, con al menos un Recurso de tipo Disco Físico que utilizaremos para la instalación de SQL Server 2005.

Seleccionar los Nodos que se desean utilizar para ejecutar SQL Server 2005 (Cluster Node Configuration). Esta pregunta sólo se realiza cuando la instalación se realiza sobre un Cluster. Cuando se trata de un servidor independiente, esta pantalla no aparece. Aunque el caso habitual es utilizar un Cluster de 2 Nodos, con ambos Nodos disponibles para ejecutar SQL Server 2005 en Cluster, es posible realizar la instalación de SQL Server 2005 en Cluster con múltiples Nodos, utilizando todos los Nodos del Cluster para ejecutar SQL Server 2005, o bien, utilizar sólo un subconjunto de los Nodos del Cluster. En nuestra instalación, utilizaremos el Nodo VSQL03 como requerido (es el Nodo desde el que hemos iniciado la instalación) y dejaremos seleccionado el Nodo VSQL04 para que también pueda ejecutar SQL Server 2005 en Cluster.

Especificar la contraseña del usuario con el cual se está realizando la instalación actual (Remote Account Information). Doy por hecho, que tiene suficientes permisos para la instalación en todos los Nodos del Cluster. Esta pregunta sólo se realiza cuando la instalación se realiza sobre un Cluster. Cuando se trata de un servidor independiente, esta pantalla no aparece. Esto es necesario porque el programa de instalación creará un JOB del Administrador de Tareas de Windows (el Task Manager de toda la vida ;-) en cada Nodo del Cluster en el que instalemos SQL Server 2005. Seguidamente, se lanzará dicho JOB con el objetivo de iniciar de éste modo la instalación remota del producto.

Especificar las cuentas de inicio de los servicios (SQL Server, SQL Agent, SQL Browser) que vamos a instalar (Service Account). Por defecto, y habitualmente, se suele utilizar el mismo usuario para todos los servicios, sin embargo es posible activar la opción Customize for each service account, y especificar para cada Servicio qué usuario se desea utilizar para iniciarlo. Especificamos el usuario deseado (o usuarios deseados), y click Next para continuar.

Especificar los Grupos de Directorio Activo (Domain Groups for Clustered Services). Esta pregunta sólo se realiza cuando la instalación se realiza sobre un Cluster. Cuando se trata de un servidor independiente, esta pantalla no aparece. Ya hablamos anteriormente en este Artículo de todas las consideraciones relativas a Directorio Activo (Active Directory) en relación con la instalación de un Cluster de SQL Server 2005. Especificar los grupos de Directorio Activo que deseamos utilizar, y click en Next para continuar.

Especificar el tipo de Autenticación para la instancia de SQL Server 2005 (Authentication Mode). No tiene demasiada importancia, desde el punto de vista, de que podemos cambiar esta configuración una vez finalizada la instalación. Sus implicaciones ya las explicamos anteriormente en este mismo Artículo. En cualquier caso, si tenemos dudas, podemos poner la Autenticación Mixta (que permite usuarios de SQL Server y de Windows), o bien, utilizar la Autenticación Windows y si en un futuro necesitamos cambiarlo, lo cambiamos a Autenticación Mixta y fuera. Eso si, en caso de utilizar Autenticación Mixta, especificar una contraseña segura para SA y jamás dejarla en blanco, si no queremos comprometer la seguridad de SQL Server antes de haberlo instalado.

Especificar la intercalación para la instancia de SQL Server 2005 (Collation Settings). También hablamos de la intercalación (y de sus implicaciones), anteriormente en este mismo artículo. Se trata de una decisión delicada, ya que si nos equivocamos deberemos Reconstruir las bases de datos del sistema (REBUILD), o bien, desinstalar SQL Server 2005 y volver a instalar SQL Server 2005 utilizando la intercalación deseada. Como hablamos, utilizaremos la intercalación Modern_Spanish_CI_AS (Case Insensitive, Accent Sensitive), pero cada uno debe utilizar la intercalación que le venga bien.

  • Especificar si se desea enviar a Microsoft información de errores e información de uso a Microsoft (Error and Usage Report Settings). No tiene mayor misterio.
  • Llegados a este punto, el programa de instalación dispone de toda la información necesaria para iniciar el proceso de instalación de nuestro Cluster de SQL Server 2005 (Ready to Install). Si estamos de acuerdo (va a ser que sí ;-), Click Install para iniciar la instalación.
Se mostrará la información de progreso de la instalación (Setup Progress). En una instalación en Cluster, podemos utilizar el desplegable etiquetado como Node, para poder visualizar el progreso de la instalación en un Nodo específico de Cluster, ya que realmente se van a realizar dos instalaciones (una en cada Nodo). Ojo con este detalle, ya que lo que estamos viendo por defecto es la información del progreso de la instalación en el primer Nodo del Cluster, o mejor dicho, en el Nodo en el que hemos iniciado el programa de instalación de SQL Server 2005. Esto tardará un poquito, así que es un buen momento para tomar un café, ir al baño, y si no habéis leído este Artículo completo, quizás os pueda interesar este rato para avanzar en la lectura, y así luego continuar a “tiro hecho” con el resto de la instalación ;-)
Al finalizar la instalación, podremos observar en el diálogo Setup Progress que todos los Productos y/o Componentes que seleccionamos para instalar están con la bolita verde en ambos Nodos (utilizar el desplegable Node), y además, el botón Next está habilitado. Asi que nada, Click Next para continuar.
Y aquí acaba la instalación (Completing Microsoft SQL Server 2005 Setup). Una pantalla con un poquitín de información, un enlace al LOG de la instalación, un enlace a la herramienta Surface Area Configuration Tool, y poco más. Click Finish, y con esto, ya tendremos instalado nuestro deseado Cluster de Microsoft SQL Server 2005. En caso de que se produzcan errores de instalación, puede resultar muy útil consultar el LOG de la instalación para localizar errores detallados que nos faciliten diagnosticar el motivo del fallo (y si no, buscamos en Internet por el texto de dichos errores, que en ocasiones, también resulta ;-).
Como se puede observar, la instalación de SQL Server 2005 en Cluster es algo laboriosa, principalmente por la preparación propia del Cluster y de Directorio Activo. Además, el propio proceso de instalación de SQL Server 2005 es algo más complejo cuando se realiza en Cluster que cuando se realiza sobre un servidor independiente, es decir, se realizan más preguntas y además estamos realizando realmente varias instalaciones (una en cada Nodo del Cluster seleccionado), aunque no nos demos cuenta, y esto también hace que el tiempo de instalación pueda ser un poquitín más largo. En cualquier caso, teniendo bien claros los conceptos que hemos comentado a lo largo de este Artículo, aún siendo un proceso de instalación un poco laborioso, resulta sencillo, y con un poco de tiempo podremos finalizar una perfecta instalación de SQL Server 2005 con Alta Diponibilidad (Microsoft Cluster MSCS).
  • Detener la Instancia de SQL Server.
  • Desde una ventana de Símbolo de Sistema (de esas tipo MSDOS de toda la vida ;-), nos posicionamos en el directorio en el que están los ejecutables de la Instancia de SQL Server deseada (ej: cd “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn”).
  • Iniciar la Instancia de SQL Server en modo Usuario Unico (Single User), lo cual se hace con el parámetro -m, y de forma adicional, con el parámetro -c al estar iniciando la Instancia desde fuera del controlador de servicios de Windows (vamos, que es por hacerlo a pelo). Ej:sqlservr.exe -c -m
  • Ahora nos podremos conectar a la Instancia SQL Server, ya sea a través de la utilidad sqlcmd.exe, a través de una nueva consulta de SQL Query Analyzer, etc. Recordar que estamos en modo de Usuario Unico, es decir, si abrimos el Enterprise Manager de SQL Server, estaremos consumiendo esa única conexión, y cuando nos intentemos conectar con una nueva consulta, no podremos (la única conexión disponible está siendo utilizada por el Enterprise Manager 
  • Cuando acabemos, para detener la Instancia de SQL Server, desde la ventana de Símbolo de Sistema de antes, pulsar Ctrl-C, y responder que sí cuando nos pregunten confirmación para detener la Instancia de SQL Server.

    En el caso de estar trabajando con una Instancia de SQL Server en Cluster, se debe tener en cuenta, que para detener una Instancia de SQL Server en Cluster es recomendable hacerlo a través de la herramienta administrativa Cluster Administrator, seleccionando el Recurso correspondiente al Servicio de SQL Server, y poniéndolo OffLine (opción Take OffLine). Si hacemos esta operativa desde el Administrador de Servicios de Windows de uno de los Nodos, el Servicio de Cluster observará la detención del servicio de SQL Server, y se encargará de volver a iniciarlo, por lo cual no podremos detener la Instancia de SQL Server. Por el contrario, en caso de una Instancia de SQL Server que no esté montada en Cluster, si es posible detenerla desde el Administrador de Servicios de Windows (o con un comando NET STOP de los de toda la vida.

    También tener en cuenta el mismo detalle para iniciar una Instancia de SQL Server en Cluster: a ser posible, Cluster Administrator (opción Take OnLine).

En este tema se explica cómo crear un nuevo clúster de conmutación por error en Windows Server 2003  mediante Cluster.exe o la herramienta Administración del clúster de conmutación por error. Al crear un nuevo clúster de conmutación por error para su uso, debe indicar toda la información de configuración de clústeres inicial. En este tema se ofrecen instrucciones detalladas acerca de cómo crear un nuevo clúster de conmutación por error en Windows Server 2003.

Antes de empezar

Antes de poder crear un clúster de conmutación por error, debe instalar la característica Clústeres de conmutación por error en ambos nodos.

Estos procedimientos se pueden llevar a cabo localmente en el primer nodo del clúster o de forma remota. Sin embargo, recomendamos llevarlos a cabo en el equipo que será el primer nodo del clúster.

Para ejecutar este procedimiento, la cuenta que use debe tener delegada la pertenencia al grupo Administradores local para el servidor de destino. 

Procedimiento

 

 

 

 

Abra la herramienta de Administración del clúster de conmutación por error.

 

En el panel de acciones, haga clic en Crear un clúster. Se iniciará el Asistente para crear clústeres.

Si es la primera vez que se inicia el asistente, aparecerá la página Antes de empezar. Existe la opción de ocultar esta página en los usos posteriores del asistente, de manera que la primera página en aparecer sea la página Seleccionar servidores. Si se muestra la página Antes de empezar, lea la información que aparece en ella y haga clic en Siguiente para continuar.

En el campo Nombre del clúster, escriba el nombre del clúster de conmutación por error. Este es el nombre que ve al conectarse y administrar el clúster. En el campo Dirección del área de red, escriba las direcciones IP y las máscaras de subredes correspondientes y, a continuación, haga clic en Siguiente.

En la página Seleccionar servidores, escriba el nombre del primer nodo en el campo Escribir el nombre del servidor y haga clic en Agregar. Repita este paso para el segundo nodo. También puede usar el botón Examinar para explorar Active Directory para los equipos que desee agregar. Cuando ambos nodos se hayan agregado a la lista de Servidores seleccionados, haga clic en Siguiente.

Aparecerá la página Confirmación. Compruebe que la configuración del clúster sea correcta y haga clic en Siguiente para crearlo.

Una vez formado el clúster, aparecerá la página Resumen. Haga clic en Finalizar para cerrar el asistente.

Ingresamos la IP que tendra nuestro cluster, entonces cuando hayamos terminado la IP que respondera nuestras peticiones sera esta, por lo cual es recomendable hacer la reservacion correspondiente de esta direccion.

Aquí debemos ingresar la cuenta con la cual se ejecutara el servicio del cluster, debe ser una cuenta de dominio y debe tener permisos de administrador en cada nodo.

Seleccionamos el tipo de quorum, Puede ser local, shared y Majority node set según el tipo de cluster que necesitemos

en este caso seleccionamos Quorum en el disco compartido Q:

Ahora esperamos mientras se crea nuestro cluster.

Una vez terminado podemos ver el resumen

Y bueno con esto ya tenemos el cluster configurado

En muchas ocasiones el uso de características avanzadas de los casos de uso generan dudas en los equipos de desarrollo. La razón básica es que estos modelos deben ser claros antes que cualquier otra cosa, lo que lleva a evitar el uso de las relaciones de inclusión y extensión, entre otras características.

Sin embargo, por muy de acuerdo que podamos estar con el deseo de claridad y sencillez, existen situaciones en que hacer uso de una relación avanzada entre casos de uso mejora en lugar de reducir, la claridad del modelo de requisitos. De ahí por tanto que todo analista de requisitos debe comprender perfectamente el significado de estas relaciones. En el presente post abordamos la relación de extensión <<extend>>.

Técnicamente como para el glosario, la relación de extensión <<extend>> se define como:

Relación <<extend>> Un caso de uso extiende a otro cuando sin alterar a este, se incorpora su funcionalidad como parte integral del primero. Se denota con una relación que apunta del caso extendido al caso base y la conexión se hace o bien al principio del flujo de eventos principal del caso base o en alguno de los puntos de extensión que este haya definido.

La notación gráfica es la siguiente:

Extend

La relación del ejemplo significa que un caso de uso ya existente (el caso “A”) se aprovecha en la definición de un segundo caso (el caso “B”). Dado que la reutilización que requerimos agrega funcionalidad pero no altera al caso base, se ha optado por la relación de extensión. Dicha relación se ha denotado gráficamente con una flecha de dependencia desde el caso extendido (el caso “B”) al caso base (el caso “A”). La dependencia la hemos estereotipado con <<extend>> para que quede claro lo que pretendemos decir.

A nivel de los flujos de eventos, se podría decir que el flujo principal del caso base no se ve alterado, pero que en cambio, el flujo de eventos del caso extendido hace referencia al primero, de manera tal que no puede ser entendido en ausencia de los pasos del caso base.

A fin de contar con un ejemplo completo, consideremos un sistema de compras electrónico. Digamos que este sistema va a atender tanto a clientes finales como a clientes corporativos, permitiendo que adquieran productos en nuestra tienda en línea. La diferencia será que los clientes corporativos hacen compras masivas, quizás programando la entrega a lo largo de un periodo de tiempo de lo que compraron. Esta visión la podemos expresar en el siguiente diagrama:

Ahora si vamos al caso de uso base “Compra artículo (UC-0100)” podríamos tener la funcionalidad de escoger el artículo a comprar y el de pagar con tarjeta de crédito, por ejemplo. Esta funcionalidad esta disponible a los clientes finales, tal como se ve en el diagrama.

Por su parte, los clientes corporativos pueden escoger el artículo a comprar y el modo de pago: digamos tarjetas de crédito. Además el caso de uso captura también la funcionalidad de programar la entrega parcial de lo comprado a lo largo de un periodo de tiempo. Dado que gran parte del caso de uso “Compra masiva (UC-0200)” es idéntica a la encontrada en el caso del cliente final, optamos por reutilizar la especificación por vía de la relación de extensión.

Los criterios a aplicar para saber si la relación de extensión es aplicable son los siguientes:

  1. Hay cuando menos un caso base y un caso extendido.
  2. El caso base no se ve modificado por la existencia del caso extendido.
  3. El caso base es un caso concreto atado a cuando menos un actor.
  4. El caso extendido incorpora al caso base por completo.

La relación de extensión guarda relación con todos los restantes tipos de reutilización que están definidas para los casos de uso; en particular la relación es muy intima con la relación de inclusión <<include>> sin embargo la diferencia primordial entre <<extend>> e <<include>> es la modificación del caso base. Extensión no implica cambio, en tanto que la inclusión añade funcionalidad al caso base.

Otra relación, la herencia, es similar también a la extensión. En este caso la diferencia es que la herencia cambia o puede cambiar, la naturaleza de lo dicho en el caso base. Por ejemplo, podemos decir que aquello que fue llamado “artículo” en el caso base es ahora referido más detalladamente como “libro” o “juguete”. La herencia de casos de uso reutiliza al caso base sí, pero nos permite alterar la semántica de los detalles; algo que la relación de extensión (ni la de inclusión) pueden hacer.

Por tanto concluyamos: la relación de extensión permite reutilizar una especificación pero sin modificar al caso base.

En este artículo veremos dos ejemplos para limitar la entrada de un TextBox sólo a números, teniendo en cuenta el separador decimal del PC huésped

La manera más simple para limitar la entrada en un textbox la veremos a continuación:

  • Abre un nuevo proyecto Windows Forms
  • En el formulario agrega:
    • Un textbox
    • Una etiqueta
    • Un botón

Luego pega este condigo:

Public Class Form1
  Dim Sep As Char
  Dim Número As Double

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Número = CDbl(TextBox1.Text)
    Etiqueta1.Text = Número
  End Sub

  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    'Detectar el separador decimal de la aplicación.
    Sep = Application.CurrentCulture.NumberFormat.NumberDecimalSeparator
    TextBox1.Focus()
  End Sub

  Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
    If Not (Char.IsNumber(e.KeyChar) Or e.KeyChar.Equals(Sep) Or Char.IsControl(e.KeyChar)) Then e.Handled = True
  End Sub
End Class

ASP.NET MVC2, es una herramienta GRATIS, usada para construir aplicaciones web basada en un patro de dise;o llamado “model-view-controller” (de ahí el nombre MVC).

Al crear una aplicación usando ASP.NET MVC, dividiras tu aplicación web en estas 3 partes que mencioné.

Aumenta tu productividad en Desarrollo web con ASPNET MVC2

La parte de modelo (model) contiene todo el modelo de negocio en si. Contiene el acceso a los datos, las reglas de validación y la lógica de los mismos.

La vista (View), es solamente la presentación de tu aplicación, tipicamente son los archivos HTML.

Los controladores (Controllers), controlan el flujo de la información. Interactuan con las vistas y el modelo para realizar acciones específicas.

Al usar esta forma de desarollo, nuestra aplicación se vuelve mas flexible y se hace mucho mas fácil la tarea de darle mantenimiento.

Puedes descargarlo de la siguiente liga:

http://www.asp.net/mVC/