S ti ci_v1_201302
Upcoming SlideShare
Loading in...5
×
 

S ti ci_v1_201302

on

  • 136 views

 

Statistics

Views

Total Views
136
Views on SlideShare
136
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

S ti ci_v1_201302 S ti ci_v1_201302 Presentation Transcript

  • Curso Básico .NET - SQL Febrero 2013
  • • Programación Orientada a objetos (POO) • Lenguaje unificado de modelado (UML) • Lenguaje SQL • Lenguaje C# sTI_CI_v1_201302 Temario
  • POO View slide
  • Conceptos fundamentales sTI_CI_v1_201302 • Clase • Objeto • Abstracción • Encapsulamiento • Polimorfismo • Herencia • http://arevalomaria.wordpress.com/2010/11/24/introduccion-a-la-programacion-orientada-a-objetos/ • http://msdn.microsoft.com/es-es/library/bb972232.aspx POO View slide
  • UML
  • Principales diagramas sTI_CI_v1_201302 • Casos de uso • Clases • Estado • Secuencia • Componentes • http://www.docirs.cl/uml.htm • http://www.escet.urjc.es/~smontalvo/umlToJava_v2.pdf UML
  • Ejercicio sTI_CI_v1_201302 UML Se requiere un sistema para el control de acceso de empleados de la empresa “X”, la empresa cuenta con acceso por medio de código de empleado y sistemas biométricos, el acceso se divide en diez puertas en dos diferentes edificios. El edificio “A” cuenta con 6 puertas de las cuales tres son de uso común (baño, comedor y acceso lugar de trabajo) y tres tienen acceso restringido (site, almacén y enfermería). El edificio “B” cuenta con 4 puertas de las cuales tres son de acceso común (idem anterior) y una de acceso restringido para el almacén.
  • Ejercicio sTI_CI_v1_201302 UML Las puertas de acceso común se activan cuando se ingresa un código de acceso, las puertas de acceso restringido deberán ser abiertas únicamente cuando se ingrese un código valido así como la lectura de la huella digital. El sistema se alojara en el site del edificio “A”. Realizar un diagrama de casos de uso para el acceso a la empresa. Realizar un diagrama de clases para la aplicación. Realizar un diagrama de secuencia para el ingreso a la puerta “A” Baño y “B” almacén. Realizar un diagrama de estado para una puerta restringida.
  • SQL
  • MS SQL Server sTI_CI_v1_201302 • http://www.islasoft.com/Producto/Diferencias_SQL_Server_Office.pdf SQL • IDE • Instancia • Conexiones • Configuración de red • Administración de usuarios
  • Lenguaje de definición de datos (DDL) sTI_CI_v1_201302 • Create • Alter • Drop • Truncate • http://support.microsoft.com/kb/180841/es • http://www.youtube.com/watch?v=HO5eb2wBaBk SQL
  • Create create table [nombre_tabla]( [campo_1] [tipo dato]) Alter alter table [nombre_tabla] add [nombre_columna] [tipo dato] alter table [nombre_tabla] drop [nombre_columna] alter column [nombre_columna] [tipo_dato] [propiedad_especial] Drop drop [objeto] [nombre_tabla] • index • database • table Truncate truncate table [nombre_tabla] sTI_CI_v1_201302 • http://grimpidev.wordpress.com/2009/03/21/diferencias-entre-truncate-table-y-delete-from/ SQL Instrucciones fundamentales del DDL
  • Ejercicio(DDL) sTI_CI_v1_201302 SQL • Crear por medio de código una tabla del modelo de accesos y otra por medio la herramienta de diseño. • Crear una consulta que agregue la columna de fecha de creación y modificación además de las columnas de usuarioCreacion y usuarioUltimaModificación • Crear una consulta para remover la columna de usaurioCreacion • Borrar la primer tabla creada.
  • Lenguaje de manipulación de datos (DML) sTI_CI_v1_201302 • Insert • Update • Delete • Select SQL • http://msdn.microsoft.com/es-es/library/ms177591(v=sql.90).aspx /
  • Select select [nombre_columna],..[n] Insert Insert [nombre_tabla] values ([valor_columna],..[n]) Update update [nombre_tabla] set [nombre_columna] = [valor_columna] Delete delete from [nombre_tabla] sTI_CI_v1_201302 SQL Instrucciones fundamentales del DML
  • Lógicos •AND •OR •NOT Comparación •BETWEEN •LIKE •IN Agregado •AVG •COUNT •SUM •MAX •MIN sTI_CI_v1_201302 • http://andresmtzg.wordpress.com/2012/11/15/sql/ • http://laboratorio.is.escuelaing.edu.co/labinfo/doc/Manual_Basico_del_Lenguaje_SQL.pdf SQL Instrucciones principales del DML Clausulas •FROM •WHERE •GROUP BY •HAVING •ORDER BY Relacionales •< •> •<> •<= •>= •= Predicado •ALL •TOP •DISTINCT •DISTINCTROW
  • La sentencia join en SQL permite combinar registros de dos o más tablas en una base de datos relacional. En el Lenguaje de Consultas Estructurado (SQL). Habitualmente cuando necesitamos recuperar la información de las consultas combinadas o JOINS. Las consultas combinadas pueden ser de tres tipos: •Combinación interna •Combinación externa •Uniones sTI_CI_v1_201302 • http://www.devjoker.com/contenidos/articulos/17/Consultas-combinadas-JOINS.aspx SQL JOINS
  • Ejercicio(DML) sTI_CI_v1_201302 SQL • Insertar treinta registros en la tabla creada en el ejercicio anterior (Generar fechas de creación y modificación aleatorias no se podrá repetir ninguna) • Generar una consulta que contenga los 5 registros con fechas de creación más antiguas y modificar su fecha de modificación por la del día de hoy
  • Ejercicio(DML) sTI_CI_v1_201302 SQL • Crear una consulta que genere el siguiente resultado. • Se requiere dividir la tabla de la cual se tiene información en tres periodos (estos deberán de tratar de ser equitativos en el número de registros), estos dependerán de la fecha de creación siendo los más antiguos los que formen el primer periodo y los mas recientes el último periodo. • Extraer la fecha de creación máxima y mínima del segundo periodo.
  • Ejercicio(DML) sTI_CI_v1_201302 SQL • Crear una consulta que enliste un conteo de cada uno de los días de fecha de creación de la tabla con la que se tiene contenido. P.e. si la base de datos contiene los siguiente registros. Fecha creación 30/1/2013 30/12/2012 Deberá generar el siguiente registro. Día | Conteo 30 | 2 Nota: si un día no se encuentra este deberá mostrar un 0
  • Tabla virtual o consulta basada en varias tablas, vistas o consultas. Esta tabla virtual se le asigna un nombre que se almacena permanentemente en la base de datos, generando al igual que las tablas una entrada en el diccionario de datos. La vistas se compone de filas y columnas como una tabla real a diferencia de que estas se generan a partir de una consulta y no existen físicamente los registros sTI_CI_v1_201302 SQLVistas Sintaxis CREATE VIEW [nombre_vista] As [consulta_SQL]
  • Un procedimiento es un programa dentro de la base de datos que ejecuta una acción o conjunto de acciones especificas. Un procedimiento tiene un nombre, un conjunto de parámetros (opcional) y un bloque de código. sTI_CI_v1_201302 • http://www.devjoker.com/contenidos/catss/238/Procedimientos-almacenados-en-Transact-SQL.aspx SQL Procedimiento almacenado
  • Es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación Trigger DML Son un tipo especial de procedimiento almacenado que se ejecuta automáticamente cuando se modifican los datos de una determinada tabla. Los desencadenadores se crean a menudo para exigir integridad referencial o coherencia entre los datos lógicamente relacionados en tablas diferentes. sTI_CI_v1_201302 • http://msdn.microsoft.com/es-es/library/ms191524(v=sql.90).aspx SQL Desencadenador (Trigger)
  • Trigger DDL Los desencadenadores DDL, al igual que los desencadenadores habituales, activan procedimientos almacenados como respuesta a un evento. Sin embargo, a diferencia de los desencadenadores DML, no se activan como respuesta a las instrucciones UPDATE, INSERT o DELETE de una tabla o vista. En cambio, sí se activan en respuesta a diversos eventos del lenguaje de definición de datos (DDL). Estos eventos corresponden principalmente a instrucciones Transact-SQL que comienzan por las palabras clave CREATE, ALTER y DROP. Determinados procedimientos almacenados del sistema que realizan operaciones de estilo DDL también pueden activar desencadenadores DDL. sTI_CI_v1_201302 SQL Desencadenador (Trigger)
  • CREATE TRIGGER [nombre_desencadenador] ON DATABASE FOR [Operación Insert/Update/Alter] AS [Código] GO sTI_CI_v1_201302 • http://msdn.microsoft.com/es-es/library/ms191524(v=sql.90).aspx • http://msdn.microsoft.com/es-es/library/ms175941(v=sql.90).aspx SQL Desencadenador (Trigger)
  • sTI_CI_v1_201302 SQL Funciones Una función es una rutina de Transact-SQL o Common Language Runtime (CLR) que acepta parámetros, realiza una acción, como un cálculo complejo, y devuelve el resultado de esa acción como un valor. El valor devuelto puede ser un valor escalar (único) o una tabla. Utilice esta instrucción para crear una rutina reutilizable que se pueda utilizar de estas formas: •En instrucciones Transact-SQL como SELECT •En las aplicaciones que llaman a la función •En la definición de otra función definida por el usuario •Para parametrizar una vista o mejorar la funcionalidad de una vista indizada •Para definir una columna en una tabla •Para definir una restricción CHECK en una columna •Para reemplazar un procedimiento almacenado
  • sTI_CI_v1_201302 SQL Ejercicio •Generar una vista donde se muestre a las personas y los accesos de esta. •Generar un stored procedure para eliminar a una persona; Este deberá borrar todos los accesos de esta así como almacenar en una bitácora las principales operaciones que realizo. •Generar un trigger para dar de alta automáticamente los accesos generales cuando se da de alta una nueva persona.
  • sTI_CI_v1_201302 • http://msdn.microsoft.com/es-mx/library/ms177481.aspx SQL Tareas programadas (Jobs) El objeto de rendimiento Jobs del Agente SQL Server contiene contadores de rendimiento que proporcionan información acerca de los trabajos del Agente SQL Server.
  • sTI_CI_v1_201302 SQL Ejercicio (Jobs) •Crear un job que realice lo siguiente ejecutar un procedimiento almacenado que genere una lista con las personas que faltaron el día anterior (es decir no hay registro de fecha de ellas en ninguna puerta) así como analizar la hora de entrada y marcar con retardo a las personas que no ingresaron a tiempo (tolerancia 10 min) a la hora de entrada (9 AM) y con asistencia para las que llegaron a tiempo •Estas se deberán almacenar en una tabla de asistencia que deberá contener los siguientes estados por cada persona asistencia, retardo e inasistencia. •La tarea programada deberá correr todos los días laborales (L-V) al termino del ciclo laboral (7 PM)
  • sTI_CI_v1_201302 SQL Tablas •Físicas create Table [] •Temporales •Globales create table ##[nombre_tabla]([nombre_columna] [tipo_dato]) •Locales create table #[nombre_tabla]([nombre_columna] [tipo_dato]) •Variables declare @[nombre_tabla] TABLE( [nombre_columna] [tipo_dato]);
  • sTI_CI_v1_201302 SQL IF...ELSE Impone condiciones en la ejecución de una instrucción Transact-SQL. La instrucción Transact-SQL que sigue a una palabra clave IF y a su condición se ejecuta si la condición se cumple: la expresión booleana devuelve TRUE. La palabra clave opcional ELSE introduce otra instrucción Transact-SQL que se ejecuta cuando la condición IF no se cumple: la expresión booleana devuelve FALSE.
  • sTI_CI_v1_201302 SQL IF...ELSE IF [condicion_boleana] BEGIN [Codigo] END ELSE [Codigo] END
  • sTI_CI_v1_201302 SQL CASE Evalúa una lista de condiciones y devuelve una de las varias expresiones de resultado posibles http://technet.microsoft.com/es-es/library/ms181765.aspx
  • sTI_CI_v1_201302 SQL CASE CASE expresion WHEN [valor] THEN expresion resultado ELSE expresion resultado END
  • sTI_CI_v1_201302 SQL Cursores y ciclos Cursor Un cursor es una variable que nos permite recorrer con un conjunto de resultados obtenido a través de una sentencia SELECT fila a fila. Cuando trabajemos con cursores debemos seguir los siguientes pasos. Declarar el cursor, utilizando DECLARE Abrir el cursor, utilizando OPEN Leer los datos del cursor, utilizando FETCH ... INTO Cerrar el cursor, utilizando CLOSE Liberar el cursor, utilizando DEALLOCATE http://www.devjoker.com/contenidos/articulos/240/Cursores-en-Transact-SQL.aspx
  • sTI_CI_v1_201302 SQL Cursores y ciclos DECLARE <nombre_cursor> CURSOR FOR <sentencia_sql> -- apertura del cursor OPEN <nombre_cursor> -- Lectura de la primera fila del cursor FETCH <nombre_cursor> INTO <lista_variables> WHILE (@@FETCH_STATUS = 0) BEGIN -- Lectura de la siguiente fila de un cursor FETCH <nombre_cursor> INTO <lista_variables>… END -- Fin del bucle WHILE -- Cierra el cursor CLOSE <nombre_cursor> -- Libera los recursos del cursor DEALLOCATE <nombre_cursor>
  • sTI_CI_v1_201302 SQL Cursores y ciclos Ciclo Establece una condición para la ejecución repetida de una instrucción o bloque de instrucciones SQL. Las instrucciones se ejecutan repetidamente siempre que la condición especificada sea verdadera. Se puede controlar la ejecución de instrucciones en el bucle WHILE con las palabras clave BREAK y CONTINUE. http://msdn.microsoft.com/es-mx/library/ms178642.aspx
  • sTI_CI_v1_201302 SQL Cursores y ciclos WHILE [condicion] BEGIN [Codigo] END
  • sTI_CI_v1_201302 SQL Comando Execute Ejecuta una cadena de comandos o una cadena de caracteres dentro de un lote de Transact-SQL o uno de los siguientes módulos: procedimiento almacenado del sistema, procedimiento almacenado definido por el usuario, procedimiento almacenado CLR, función escalar definida por el usuario o procedimiento almacenado extendido. Ejemplo Execute ‘Select * from [nombre tabla]’
  • sTI_CI_v1_201302 SQL Ejercicio Generar las siguientes consultas •Generar una lista que indique por cada una de las puertas en la aplicación si esta esta asociada o no al menos a un usuario. Puerta | Asociada Almacén –A Si Almacén-B No •Generar una consulta donde muestre la lista de usuarios y los clasifique en los siguientes rubros Invitado - Solo acceso a las áreas comunes (AC) Personal – (AC) y al área de trabajo (AT) Enfermero(a) – (AC)- Enfermería (E) Infraestructura (AC) – Site Empleado | Acceso Pedro Personal María Enfermera http://msdn.microsoft.com/es-mx/library/ms178642.aspx
  • sTI_CI_v1_201302 SQL Ejercicio Generar una lista de empleados por acceso y mostrarla en el sistema Como se muestra en el siguiente ejemplo y tomando en cuanta los criterios definidos en el punto anterior. Acceso | Nombre | NAccesos | Día Enfermería María, Alejandra, Elena 12 11/02/2013 Personal Juan, Mario, Karla, John 24 11/02/2013 Infraestructura Jimena, Arturo 1 11/02/2013
  • sTI_CI_v1_201302 SQL Ejercicio final Generar un procedimiento almacenado para resolver el siguiente problema. Se desea que la base de datos controle de manera lógica el tiempo en que abre y se cierra una puerta (1 min) y un usuario no podrá abrir dos puertas considerando el siguiente criterio, puertas del mismo edificio deberá tener un minuto de diferencia para abrirlas y puertas de edificios diferentes cinco minutos de diferencia. •Modificar la estructura necesaria requerida para mantener el estado de las puertas dentro de un registro. •Generar un procedimiento almacenado para abrir una puerta este deberá regresar los siguientes valores. • ‘Acceso denegado’ Este mensaje se mostrara a la persona que no tenga permiso para acezar a la puerta
  • sTI_CI_v1_201302 SQL Ejercicio final •‘Acceso temporal denegado’ Este deberá mostrarse al usuario que trate de ingresar a una puerta y no cumpla con las reglas de tiempo establecidas anteriormente •‘Clave errónea’ Este mensaje deberá ser enviado cuando la clave de la puerta sea invalida •‘Acceso concedido’ Este deberá mostrarse cuando cumpla con todas las condiciones de acceso requeridas en el sistema. La salida esperada es la siguiente --Acceso denegado Exec [nombre_procedimiento] [paramA], [paramB], [paramC]… -- Acceso temporal denegado Exec [nombre_procedimiento] [paramD], [paramE], [paramF]… Y así sucesivamente para los cuatro estados
  • C#
  • sTI_CI_v1_201302 C# Temario •Framework .NET •Lenguaje C# •POO en C# •Estructuras de control •Arquitectura serTI •DAO , ADO, LINQ,SQL Entity Framework •Active server page (ASP) •Ajax •Javascript •Prototype •Jquery •XML •JSON •CSS •Windows Communication Foundation •Redes sociales con C# •IIS
  • sTI_CI_v1_201302 C# Framework •El Framework. NET es una plataforma de desarrollo para la creación de aplicaciones para Windows, Windows Store, Windows Phone, Windows Server y Windows Azure. •La plataforma de Marco. NET incluye el C # y Visual Basic lenguajes de programación, el tiempo de ejecución de lenguaje común, y una extensa biblioteca de clases. http://msdn.microsoft.com/es-es/library/zw4w595w.aspx
  • sTI_CI_v1_201302 C# Versiones de .NET http://msdn.microsoft.com/es-es/library/bb822049.aspx
  • sTI_CI_v1_201302 C# Versiones de .NET .NET IDE Descripción 1.0 Visual Studio .NET Contenía la primera versión de CLR y la primera versión de las bibliotecas de clases base. 1.1 Visual Studio .NET 2003 Incluía actualizaciones de ASP.NET y ADO.NET. Esta versión se actualizó dos veces posteriormente, con Service Pack 1 y (SP1) SP2.Esta versión incorporaba también la ejecución en paralelo, lo que permite que las aplicaciones de un solo equipo ejecuten varias versiones de CLR. 2.0 Visual Studio 2005 Se incorporó una nueva versión de CLR con ampliaciones de las bibliotecas de clases base, que incluían genéricos, colecciones de genéricos y ampliaciones significativas de ASP.NET. Esta versión se actualizó con el SP1 y el SP2. 3.0 Visual Studio 2005 Esta versión es esencialmente .NET Framework 2.0 con la incorporación de Windows Presentation Foundation (WPF), Windows Communications Foundation (WCF), Windows Workflow Foundation (WF) y CardSpace. Se actualizó con SP1 y SP2. 3.5 Visual Studio 2008 Se agregaron nuevas características, como los sitios web habilitados para AJAX y LINQ. La actualización SP1 incorporaba datos dinámicos y un pequeño conjunto de mejoras adicionales. 4 Visual Studio 2010 Incluye una nueva versión de CLR, bibliotecas de clases base expandidas y nuevas características, como Managed Extensibility Framework (MEF), Dynamic Language Runtime (DLR) y contratos de código. 4.5 Visual Studio 2012 Incluye una versión actualizada de CLR, compatibilidad para compilar aplicaciones Tienda Windows de Windows y las actualizaciones para WPF, WCF, WF y ASP.NET.
  • sTI_CI_v1_201302 C# Lenguaje C# C# es un lenguaje orientado a objetos elegante y con seguridad de tipos que permite a los desarrolladores crear una amplia gama de aplicaciones sólidas y seguras que se ejecutan en .NET Framework. Puede utilizar este lenguaje para crear aplicaciones cliente para Windows tradicionales, servicios Web XML, componentes distribuidos, aplicaciones cliente-servidor, aplicaciones de base de datos, y muchas tareas más. C# proporciona un editor de código avanzado, diseñadores de interfaz de usuario prácticos, un depurador integrado y muchas otras herramientas para facilitar un rápido desarrollo de la aplicación basado en la versión del lenguaje C# y en .NET Framework. http://msdn.microsoft.com/es-es/library/z1zx9t92(v=vs.80).aspx
  • sTI_CI_v1_201302 C# POO • Clase • class • Modificadores de acceso • Public [Elemento] • Internal [Elemento] • Private [Elemento] • Protected [Elemento] • Objeto • [Clase] [nombre Objeto] = new [Clase]() • var [nombre Objeto] = new [Clase]() • var [nombre Objeto] = [Objeto]() http://msdn.microsoft.com/es-mx/library/ms228593(v=vs.80).aspx
  • sTI_CI_v1_201302 C# POO • Abstracción • abstract class [Nombre_Base] • Encapsulamiento • Public String [Popiedad]{get;set;} • Public String [Popiedad]{ get{return _att;} set{_att=value;};} • Herencia • class [Nombre]: [Nombre_Base] http://msdn.microsoft.com/es-es/library/ms173152(v=vs.90).aspx
  • sTI_CI_v1_201302 C# POO • Polimorfismo internal class Mamifero { public int Patas { get; set; } public string Nombre { get; set; } public virtual void YoSoy() { Console.WriteLine("Yo Soy:"); } } internal class Leon : Mamifero { public Leon() { this.Patas = 4; this.Nombre = "Leon"; }
  • sTI_CI_v1_201302 C# POO public override void YoSoy() { base.YoSoy(); Console.WriteLine("Un" + this.Nombre + " con " + this.Patas + " patas"); } } internal class Chimpance : Mamifero { public Chimpance() { this.Patas = 2; this.Nombre = "Chimpance"; } public override void YoSoy() { base.YoSoy(); Console.WriteLine("Un" + this.Nombre + " con " + this.Patas + " patas"); } }
  • sTI_CI_v1_201302 C#POO class Program { static void Main(string[] args) { var oMamifero = new Mamifero(); Console.WriteLine("Mamifero"); oMamifero.YoSoy(); var oLeon = new Leon(); Console.WriteLine("Leon"); oLeon.YoSoy(); var oChimpance= new Chimpance(); Console.WriteLine("Chimpance"); oChimpance.YoSoy(); List<Mamifero> oMamiferos = new List<Mamifero>(); oMamiferos.Add(oLeon); oMamiferos.Add(oChimpance); Console.WriteLine("Polimorfismo"); foreach (var mamifero in oMamiferos) { mamifero.YoSoy(); } Console.ReadKey(); } }
  • sTI_CI_v1_201302 C# POO • Polimorfismo internal class Mamifero { public int Patas { get; set; } public string Nombre { get; set; } public virtual void YoSoy() { Console.WriteLine("Yo Soy:"); } } internal class Leon : Mamifero { public Leon() { this.Patas = 4; this.Nombre = "Leon"; } http://msdn.microsoft.com/es-es/library/ms173152(v=vs.90).aspx
  • sTI_CI_v1_201302 C# Estructuras de control • If If([condicion_boleana]){ [codigo_If]; } else{ [codigo_else]; } • switch switch{ case [valor]: break; default: break; }
  • sTI_CI_v1_201302 C# Estructuras de control • while while ([condicion]) { break; continue; } • for for ([tipo_dato] [varialble] [inicializador]; [condicion de paro]; [paso]) { [codigo]; } • foreach foreach([tipo_dato] [objeto] in [Lista_Objetos] ){ [codigo]; } http://es.wikipedia.org/wiki/Estructuras_de_control
  • sTI_CI_v1_201302 C# Arquitectura serTI
  • sTI_CI_v1_201302 C# DAO (Data Access Object) Data Access Objects (DAO, Objetos de Acceso a Datos) es una interfaz orientada a objetos creada por Microsoft la cual permitía a las primeras versiones de Microsoft Access y Visual Basic utilizar el motor de base de datos Jet . Posteriormente (en la versión 3.5) fue capaz de realizar un bypass al motor Jet y directamente acceder a las fuentes de datos ODBC, incluyendo Microsoft SQL Server y otros sistemas de bases de datos de empresa. DAO 3.6 fue la versión final desarrollada por Microsoft. Microsoft dice que DAO no estará disponible en los futuros sistemas operativos de 64-bit.
  • sTI_CI_v1_201302 C# DAO (Data Access Object)
  • sTI_CI_v1_201302 C# ADO (Microsoft ActiveX Data Objects - ADO). Conjunto de objetos COM para el acceso a recursos de datos. Prevé una capa entre los lenguajes de programación y las bases de datos OLE, lo que permite a los programadores escribir programas que accedan a datos, sin saber cómo está implementada la base de datos (sólo se debe tener cuidado en la conexión a la misma). Tampoco es necesario conocer sobre SQL cuando se usa ADO, aunque también pueden utilizarse comandos SQL, pero esto crearía en el programa una dependencia del tipo de base de datos usado.
  • sTI_CI_v1_201302 C# ADO
  • sTI_CI_v1_201302 C# LINQ LINQ to SQL es una implementación de O/RM(object relational mapping, mapeador de objetos relacionales) que viene con la versión "Orcas" del .NET Framework, y nos permite modelar bases de datos relacionales con clases de .NET. Podemos consultar bases de datos con LINQ, así como actualizar/añadir/borrar datos de ellas.
  • sTI_CI_v1_201302 C# LINQ
  • sTI_CI_v1_201302 C# SQL Entity Framework Entity Framework es un conjunto de tecnologías de ADO.NET que apoyan el desarrollo de aplicaciones de software orientadas a datos. Los arquitectos y desarrolladores de aplicaciones orientadas a datos han luchado con la necesidad de lograr dos objetivos muy diferentes. Ellos deben modelar las entidades, relaciones y lógica de los problemas de las empresas que están resolviendo, y también deben trabajar con los motores de datos utilizadas para almacenar y recuperar los datos. Los datos pueden abarcar varios sistemas de almacenamiento, cada uno con sus propios protocolos, e incluso aplicaciones que funcionan con un único sistema de almacenamiento debe equilibrar los requisitos del sistema de almacenamiento con los requisitos de la escritura de código de la aplicación eficaz y fácil de mantener.
  • sTI_CI_v1_201302 C# SQL Entity Framework
  • sTI_CI_v1_201302 C# Lenguaje LINQ Language Integrated Query (LINQ, pronunciado “link”) es un componente de la plataforma Microsoft .NET que agrega capacidades de consulta a datos de manera nativa a los lenguajes .NET, si bien existen implementaciones para Java, PHP, JavaScript y ActionScript. LINQ extiende el lenguaje a través de las llamadas expresiones de consulta, que son parecidas a las sentencias SQL y pueden ser usadas para extraer y procesar convenientemente datos de arrays, clases enumerables, documentos XML, bases de datos relacionales y fuentes de terceros. Otros usos, que utilizan expresiones de consulta como plataforma general para la composición de expresiones más legibles, incluyen la construcción de manejadores de eventos. LINQ además define un conjunto de nombres de métodos (llamados operadores de consulta estándar), y un conjunto de reglas de traducción, que son usadas por el compilador para traducir las expresiones de consulta en expresiones normales del lenguaje, usando estos nombres de métodos, expresiones lambda y tipos anónimos. Muchos de los conceptos que LINQ ha introducido, fueron probados inicialmente en el proyecto de investigación Microsoft Cω. LINQ fue lanzado como un componente principal de .NET Framework 3.5 el 19 de noviembre de 2007.
  • sTI_CI_v1_201302 C# Lenguaje LINQ •LINQ to XML •LINQ to Entities •LINQ to Objects •LINQ to DataSet http://msdn.microsoft.com/es-es/library/bb387061.aspx http://msdn.microsoft.com/es-es/library/bb386964.aspx http://msdn.microsoft.com/es-es/library/bb397919.aspx http://msdn.microsoft.com/es-es/library/bb386977.aspx
  • sTI_CI_v1_201302 C# Ejercicio Generar alas siguientes consultas: •Una consulta para alta, baja, actualización y búsqueda por clave de una tabla. •Generar una consulta que obtenga la lista de los edificio en formato Xml
  • sTI_CI_v1_201302 C# Principales Operadores LINQ •Where •Select •Group by •Count •SelectMany •Distinct •Union •Intersect •Except •Take •TakeWhile •OrderBy •ThenBy •Range •Concat •Combine •Max •Average •Aggregate •Sum •Union •Min •Cross Join •Group Join
  • sTI_CI_v1_201302 C# Ejercicio •Seleccionar 5 operadores de la cada una de las columnas anteriores y utilizarlos en consultas; Las consultas serán puntuadas al final del ejercicio dependiendo de le número de operadores que se utilizan con un valor exponencial. •1 op= 1! pto •2 op = 2! ptos •……
  • sTI_CI_v1_201302 C# Métodos HTTP Método Significado GET Devuelve el recurso identificado en la URL pedida. HEAD Funciona como el GET, pero sin que el servidor devuelva el cuerpo del mensaje. Es decir, sólo se devuelve la información de cabecera. POST Indica al servidor que se prepare para recibir información del cliente. Suele usarse para enviar información desde formularios. PUT Envía el recurso identificado en la URL desde el cliente hacia el servidor. OPTIONS Pide información sobre las características de comunicación proporcionadas por el servidor. Le permite al cliente negociar los parámetros de comunicación. TRACE Inicia un ciclo de mensajes de petición. Se usa para depuración y permite al cliente ver lo que el servidor recibe en el otro lado. DELETE Solicita al servidor que borre el recurso identificado con el URL. CONNECT Este método se reserva para uso con proxys. Permitirá que un proxy pueda dinámicamente convertirse en un túnel. Por ejemplo para comunicaciones con SSL.
  • sTI_CI_v1_201302 C# Active server page (ASP) Microsoft introdujo esta tecnología llamada Active Server Pages en diciembre de 1996, por lo que no es nada nueva. Es parte del Internet Information Server (IIS) desde la versión 3.0 y es una tecnología de páginas activas que permite el uso de diferentes scripts y componentes en conjunto con el tradicional HTML para mostrar páginas generadas dinámicamente, traduciendo la definición de Microsoft: “Las Active Server Pages son un ambiente de aplicación abierto y gratuito en el que se puede combinar código HTML, scripts y componentes ActiveX del servidor para crear soluciones dinámicas y poderosas para el web”.
  • sTI_CI_v1_201302 C# Ciclo de vida ASP http://msdn.microsoft.com/es-mx/library/ms178473(v=vs.80).aspx http://msdn.microsoft.com/en-us/library/ms178472(v=vs.100).aspx •PreInit •Init •InitComplete •PreLoad •Load •LoadComplete •PreRender •PreRenderComplete •SaveStateComplete •Render •Unload
  • sTI_CI_v1_201302 C# ASP MVC (Model-View-Controller) ASP.NET MVC es, básicamente, una implementación del patrón Modelo - Vista - Controlador (MVC) para tecnología ASP.NET. El patrón MVC no es ni nuevo (data de finales de los años 70) ni está pensado para aplicaciones web, pero en realidad en aplicaciones web encaja perfectamente. Brevemente podemos decir que el patrón MVC separa la lógica (y acceso a datos) de una aplicación de su presentación, usando 3 componentes: Modelo: Representa las reglas de negocio de la aplicación (y el acceso a datos subyacente). Vistas: Representan la presentación de la aplicación. Controlador: Actúan de intermediario entre el usuario y el Modelo y las Vistas. Recogen las peticiones del usuario, interaccionan con el modelo y deciden que vista es la que debe mostrar los datos. En el contexto de ASP.NET MVC: Toda la lógica de negocio y el acceso a datos es el Modelo (en muchos casos el Modelo puede estar en uno o varios assemblies referenciados). Las vistas contienen, básicamente, el código que se envía al navegador, es decir el código HTML (y código de servidor asociado, siempre y cuando este código haga cosas de presentación, no de lógica de negocio). Los controladores reciben las peticiones del navegador y en base a esas, deciden que vista debe enviarse de vuelta al navegador y con qué datos.
  • sTI_CI_v1_201302 C# ASP MVC (Model-View-Controller)
  • sTI_CI_v1_201302 C# ASP Controles principales ASP •Label •Textbox •HyperLink •Image •RadioButton •CheckBox •GridView •ListBox •DropDownList HTML •Input (Button) •Input (Text) •Input (CheckBox) •Image •Select Validadores •Compare •Custom •Range •RegularExpresion •RequieredField •ValidationSummary
  • sTI_CI_v1_201302 C# ASP Master Page Páginas maestras ASP.NET le permiten crear un diseño coherente para las páginas de la aplicación. Una sola página maestra define el aspecto y la sensación y el comportamiento estándar que desea para todas las páginas (o un grupo de páginas) de la aplicación. A continuación, puede crear páginas individuales de contenido que contienen el contenido que desea mostrar. Cuando los usuarios solicitan las páginas de contenido, se fusionan con la página principal para producir una salida que combina el diseño de la página principal con los contenidos de la página de contenido.
  • sTI_CI_v1_201302 C# Control de usuario (WebUserControl) Controles de usuario Web son archivos con la extensión ascx que se pueden incluir en los formularios Web Forms, Web Forms con el padre convirtiéndose en el contenedor del control.. Controles de usuario Web le permiten reutilizar fácilmente piezas de funcionalidad en una serie de formularios Web Forms. http://msdn.microsoft.com/en-us/library/3457w616(v=vs.71).aspx
  • sTI_CI_v1_201302 C# Controles de navegación •Control Menu El Menu (control) permite agregar funcionalidad de navegación a las páginas web. El control Menu admite un menú principal y submenús, y permite definir menús dinámicos (a veces denominados menús emergentes). Para obtener información acerca de la programación del control Menu, vea Menu (Clase) en MSDN Library. •Control SiteMapPath El SiteMapPath (control) muestra una ruta de navegación (también denominada árbol de navegación) que indica al usuario la ubicación de la página actual y muestra los vínculos como una ruta de retorno a la página principal. El control proporciona muchas opciones para personalizar la apariencia de los vínculos. Para obtener información acerca de la programación del control SiteMapPath, vea el artículo SiteMapPath (Clase) en MSDN Library. • Control TreeView El TreeView (control) sirve para mostrar datos jerárquicos, como una tabla de contenido o un directorio de archivos, en una estructura de árbol. Para obtener información acerca de la programación del control TreeView, vea el artículo TreeView (Clase) en MSDN Library.
  • sTI_CI_v1_201302 C# Ajax AJAX, acrónimo de Asynchronous JavaScript And XML (JavaScript asíncrono y XML), es una técnica de desarrollo web para crear aplicaciones interactivas o RIA (Rich Internet Applications). Estas aplicaciones se ejecutan en el cliente, es decir, en el navegador de los usuarios mientras se mantiene la comunicación asíncrona con el servidor en segundo plano. De esta forma es posible realizar cambios sobre las páginas sin necesidad de recargarlas, lo que significa aumentar la interactividad, velocidad y usabilidad en las aplicaciones. Ajax es una tecnología asíncrona, en el sentido de que los datos adicionales se solicitan al servidor y se cargan en segundo plano sin interferir con la visualización ni el comportamiento de la página. JavaScript es el lenguaje interpretado (scripting language) en el que normalmente se efectúan las funciones de llamada de Ajax mientras que el acceso a los datos se realiza mediante XMLHttpRequest, objeto disponible en los navegadores actuales. En cualquier caso, no es necesario que el contenido asíncrono esté formateado en XML. Ajax es una técnica válida para múltiples plataformas y utilizable en muchos sistemas operativos y navegadores dado que está basado en estándares abiertos como JavaScript y Document Object Model (DOM). http://msdn.microsoft.com/en-us/library/3457w616(v=vs.71).aspx
  • sTI_CI_v1_201302 C# Ejercicio •Crear una página maestra alguna de las siguientes distribuciones
  • sTI_CI_v1_201302 C# Ejercicio Crear o modifica la estructura necesaria para realizar lo siguiente. •Generar una página de bienvenida en el sistema. Esta deberá tener un espacio para ingresar un correo electrónico y un password. El sistema deberá validar estos datos y si son correctos deberá enviarlo a una pantalla de Inicio. •Crear un mapa de navegación para el sitio así como un menú lateral. •El sistema deberá guardar en un XML el estado de cada usuario y al iniciar la aplicación esta deberá enviarlo a la ultima página donde navego. Si no existe deberá ingresar al la de inicio
  • sTI_CI_v1_201302 C# Ejercicio Crear una página web para el registro de usuarios donde se valide lo siguiente. •Validar que la caja de texto password sea igual al de la confirmación •Generar que la fecha de nacimiento sea de un adulto (18 años mínimo) •Validar el correo electrónico tenga una estructura valida. •Validar que se ingrese el nombre •Mostrar un resumen de los datos erróneos en caso de existir
  • sTI_CI_v1_201302 C# GridView C
  • sTI_CI_v1_201302 C# Interface de usuario •La interfaz de usuario es el medio con que el usuario puede comunicarse con una máquina, un equipo o una computadora, y comprende todos los puntos de contacto entre el usuario y el equipo. Normalmente suelen ser fáciles de entender y fáciles de accionar.
  • sTI_CI_v1_201302 C# Prototype (patrón de diseño) El patrón de diseño Prototype (Prototipo), tiene como finalidad crear nuevos objetos duplicándolos, clonando una instancia creada previamente.. Este patrón especifica la clase de objetos a crear mediante la clonación de un prototipo que es una instancia ya creada. La clase de los objetos que servirán de prototipo deberá incluir en su interfaz la manera de solicitar una copia, que será desarrollada luego por las clases concretas de prototipos
  • sTI_CI_v1_201302 C# Javascript Lenguaje de programación interpretado, dialecto del estándar ECMAScript. Se define como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico. Se utiliza principalmente en su forma del lado del cliente (client-side), implementado como parte de un navegador web permitiendo mejoras en la interfaz de usuario y páginas web dinámicas, en bases de datos locales al navegador... aunque existe una forma de JavaScript del lado del servidor (Server-side JavaScript o SSJS). Su uso en aplicaciones externas a la web, por ejemplo en documentos PDF, aplicaciones de escritorio (mayoritariamente widgets) es también significativo. JavaScript se diseñó con una sintaxis similar al C, aunque adopta nombres y convenciones del lenguaje de programación Java. Sin embargo Java y JavaScript no están relacionados y tienen semánticas y propósitos diferentes. https://developer.mozilla.org/es/docs/Introducci%C3%B3n_a_JavaScript_orientado_a_objetos
  • sTI_CI_v1_201302 C# Javascript •Eventos onClick,onChange,mouseMove •Selectores getElementByID, getElementByTagName •Document Object Model document.XX •Incluir script •HTML <script src=“[Nombre]" type="text/javascript"></script> •C# Page.ClientScript.RegisterClientScriptBlock(this.GetType(), “[Nombre_Script]",[ Script], true); http://www.maestrosdelweb.com/editorial/diez-funciones-imprescindibles-en-javascript/ http://www.maestrosdelweb.com/editorial/dom/
  • sTI_CI_v1_201302 C# Cascading Style Sheets (CSS) CSS son las siglas de Cascading Style Sheets - Hojas de Estilo en Cascada - que es un lenguaje que describe la presentación de los documentos estructurados en hojas de estilo para diferentes métodos de interpretación, es decir, describe como se va a mostrar un documento en pantalla, por impresora, por voz (cuando la información es pronunciada a través de un dispositivo de lectura) o en dispositivos táctiles basados en Braille. Dentro del diseño de páginas de Internet se presenta esta como la vanguardia en cuanto a definición de estilos dentro de las plantillas de diseño. A través de instrucciones en código HTML se definen los estándares del conjunto de páginas que conforman el proyecto. La meta es uniformizar nuestro diseño. http://www.xsvc.com.ve/tutoriales/ManualCssHojasDeEstilos.pdf
  • sTI_CI_v1_201302 C# Principales elementos CSS http://www.w3c.es/Divulgacion/GuiasReferencia/CSS21/ •Selectores •Notación •Tipos de medios •Sintaxis •Unidades •Modelo de cajas •Márgenes •Relleno •Bordes •Modelo de formato visual •Detalles del modelo de formato visual •Efectos visuales •Contenido generado, numeración automática y listas •Colores y fondo •Medios paginados •Fuentes •Texto •Tablas •Interfaz de usuario
  • sTI_CI_v1_201302 C# Estructura de estilos CSS •Elemento html { border-color:red; } <html> Estilo .html { border-color:red; } <body class=“html”> •Identificador #html { border-color:red; } <div id=“html”>
  • sTI_CI_v1_201302 C# Ejemplo CSS <html> <head> <style> body{ background-color:gray;} /*Nivel 1*/ body table { background-color:yellow;} /*Nivel 2*/ body table tr {background-color:green;} /*Nivel 3*/ #MiTexto{background-color:#f32;} .Elemento{color:white;} </style> </head> <body> <span> Texto Body</span> <table> <tr class="Elemento"> <td > Texto td <span id="MiTexto"> Texto Span</span> </td> </tr> </table> </body> </html>
  • sTI_CI_v1_201302 C# jQuery •jQuery es una biblioteca de JavaScript, creada inicialmente por John Resig, que permite simplificar la manera de interactuar con los documentos HTML, manipular el árbol DOM, manejar eventos, desarrollar animaciones y agregar interacción con la técnica AJAX a páginas web. Fue presentada el 14 de enero de 2006 en el BarCamp NYC. •Lema write less, do more
  • sTI_CI_v1_201302 C# jQuery Selectores y Eventos •Selectores jQuery() o $() •Eventos document.ready( function (){} ); Funciones anonimas function (){} •Efectos •Handlers http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery
  • sTI_CI_v1_201302 C# jQuery Ejercicio •Generar una página que contenga 4 controles que deben de llevar las siguientes características •(A)Dos deberán ser etiquetas (html) con nombres y clases diferentes •(B)Uno deberá ser un dropDownList (ASP) con el nombre de una clase igual al de una etiqueta •(C)Una caja de texto Con clases y nombres diferentes a los anteriores. •Crear botones para lo siguiente •Seleccionar todos los controles que pertenezcan a la clase estilos 2 y deberá ocultarse.
  • sTI_CI_v1_201302 C# jQuery Ejercicio •Seleccionar la caja de texto y las etiquetas cambiando las siguientes propiedades •Tipo de letra Calibri •Tamaño 10 pts •Color Rojo Cargar una imagen que se oriente en la parte superior de la pantalla a la derecha esta deberá cambiar cuando el mouse pase sobre ella y regresar a su estado cuando este salga
  • sTI_CI_v1_201302 C# jQuery Ajax A) jQuery.ajax({ url: "test.html", context: document.body }).done(function() { //código aquí }); B) jQuery.ajax({ url : "test.html", cache : false, type : this.type, dataType : "jsonp", crossDomain : true, data : { json : this.data }, success : function(data) { //código aquí }, error : function(data) { //código aquí } }); http://api.jquery.com/jQuery.ajax/
  • sTI_CI_v1_201302 C# XML XML proviene de eXtensible Markup Language (“Lenguaje de Marcas Extensible”). Se trata de un metalenguaje (un lenguaje que se utiliza para decir algo sobre otro lenguaje) extensible de etiquetas que fue desarrollado por el Word Wide Web Consortium (W3C), un consorcio internacional que elabora recomendaciones para la World Wide Web. El XML es una adaptación del SGML (Standard Generalized Markup Language), un lenguaje que permite la organización y el etiquetado de documentos. Esto quiere decir que el XML no es un lenguaje en sí mismo, sino un sistema que permite definir lenguajes de acuerdo a las necesidades. El XHTML, el MathML y el SVG son algunos de los lenguajes que el XML está en condiciones de definir.
  • sTI_CI_v1_201302 C# XML Estructura Básica <?xml version="1.0"?> <Elemento> <Elemento_Hijo [nombreAtributo]=valor> valorElemento < /Elemento_Hijo > </Elemento>
  • sTI_CI_v1_201302 C# JSON JSON, acrónimo de JavaScript Object Notation, es un formato ligero para el intercambio de datos. JSON es un subconjunto de la notación literal de objetos de JavaScript que no requiere el uso de XML. La simplicidad de JSON ha dado lugar a la generalización de su uso, especialmente como alternativa a XML en AJAX. Una de las supuestas ventajas de JSON sobre XML como formato de intercambio de datos en este contexto es que es mucho más sencillo escribir un analizador sintáctico (parser) de JSON. En JavaScript, un texto JSON se puede analizar fácilmente usando la función eval(), lo cual ha sido fundamental para que JSON haya sido aceptado por parte de la comunidad de desarrolladores AJAX, debido a la ubicuidad de JavaScript en casi cualquier navegador web.
  • sTI_CI_v1_201302 C# JSON Estructura Básica { Elemento:valor Elemento:[ elementoHijo1:valor ,elementoHijo2:valor] }
  • sTI_CI_v1_201302 C# Comparación XML y JSON XML <persona> <nombre>juan</nombre> <edad>22</edad> <estudios> <estudio>primario</estudio> <estudio>secundario</estudio> </estudios> </persona> JSON { 'nombre':'juan', 'edad':22, 'estudios':['primario','secundario'] }
  • sTI_CI_v1_201302 C# Prototype Prototype es un framework que facilita el desarrollo de aplicaciones web con JavaScript y AJAX. Su autor original es Sam Stephenson, aunque las últimas versiones incorporan código e ideas de muchos otros programadores. A pesar de que incluye decenas de utilidades, la librería es compacta y está programada de forma muy eficiente. Prototype se ha convertido en poco tiempo en una referencia básica de AJAX y es la base de muchos otros frameworks y librerías relacionadas como script.aculo.us. Las primeras versiones de Prototype no incluían ningún tipo de documentación, lo que dificultaba su uso y provocaba que la mayoría de usuarios desconocieran su verdadero potencial. Afortunadamente, las versiones más recientes del framework disponen de una completa documentación de todas las funciones y métodos que componen su API. La documentación incluye la definición completa de cada método, sus atributos y varios ejemplos de uso: http://www.prototypejs.org/api http://librosweb.es/ajax/capitulo_10/el_framework_prototype.html
  • sTI_CI_v1_201302 C# Definición de un prototipo Definición var Objeto= Class.create(); Objeto. prototype = { initialize: function(propiedad) { propiedad= propiedad; }, metodo: function(parametro) { return this. propiedad+ ': ' + parametro; } }; Uso var objeto= new Objeto(‘propiedad'); objeto. metodo(' parametro '); // -> " propiedad : parametro "
  • sTI_CI_v1_201302 C# Herencia de un prototipo Definición var objetoHijo= Class.create(); objetoHijo.prototype = Object.extend(new Objeto() , { //Redefinimos el método metodo: function(parametro) { return parametro; } } ); Uso var hijo = new objetoHijo(‘propiedad'); hijo.metodo(‘parametro'); // -> “parametro”
  • sTI_CI_v1_201302 C# jQuery UI Es una biblioteca de componentes para el framework jQuery que le añaden un conjunto de plug- ins, widgets y efectos visuales para la creación de aplicaciones web. Cada componente o módulo se desarrolla de acuerdo a la filosofía de jQuery (find something, manipulate it: encuentra algo, manipúlalo).
  • sTI_CI_v1_201302 C# jQuery UI Principales controles Interactions Draggable Droppable Resizable Selectable Sortable http://jqueryui.com/demos/ Widgets Accordion Autocomplete Button Datepicker Dialog Menu Progressbar Slider Spinner Tabs Tooltip Effects Add Class Color Animation Effect Hide Remove Class Show Switch Class Toggle Toggle ClassUtilities Position Widget Factory
  • sTI_CI_v1_201302 C# jQuery UI Ejercicio •Seleccionar tres elementos de jQuery UI e implementarlos en una página •Crear un prototipo de la pantalla que se utilizo antes y generar los métodos correspondientes para guardar, actualizar, consultar y eliminar para desde jQuery.
  • sTI_CI_v1_201302 C# Windows Communication Foundation •Windows Communication Foundation (WCF) es un marco de trabajo para la creación de aplicaciones orientadas a servicios. Con WCF, es posible enviar datos como mensajes asincrónicos de un extremo de servicio a otro. Un extremo de servicio puede formar parte de un servicio disponible continuamente hospedado por IIS, o puede ser un servicio hospedado en una aplicación. Un extremo puede ser un cliente de un servicio que solicita datos de un extremo de servicio. Los mensajes pueden ser tan simples como un carácter o una palabra que se envía como XML, o tan complejos como una secuencia de datos binarios
  • sTI_CI_v1_201302 C# WCF Componentes principales •Endpoint •Address (¿Dónde?) Dirección de la red •Binding (¿Cómo?) Protocolo:TCP,HTTP,MSMQ etc.. Codificación: Texto o Binario Seguridad: SSL, Seguridad SOAP Referencia al servicio a exponer •Contract (¿Qué?) •Interfaz: Contrato de servicio
  • sTI_CI_v1_201302 C# WCF Diagrama EndpointEndpoint AA B CBC Mensajes Cliente Servidor
  • sTI_CI_v1_201302 C# WCF Configuración Services <system.serviceModel> <services> <service behaviorConfiguration="BlockBehaivior" name="Aon.Adte.Servicio.Estadistico.Folios"> <endpoint address="" binding="basicHttpBinding" bindingConfiguration="BlockBinding" contract="Aon.Adte.Servicio.Estadistico.IFolios"> <identity> <dns value="10.205.4.21" /> </identity> </endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> </services> </system.serviceModel>
  • sTI_CI_v1_201302 C# WCF Configuración Behaviors <behaviors> <serviceBehaviors> <behavior name="BlockBehaivior"> <dataContractSerializer maxItemsInObjectGraph ="65536"/> <serviceMetadata httpGetEnabled="true" /> <serviceDebug includeExceptionDetailInFaults="true" /> </behavior> </serviceBehaviors> </behaviors> Bindings <bindings> <basicHttpBinding> <!--Base--> <binding name="BlockBinding" closeTimeout="01:00:00" sendTimeout="01:00:00" receiveTimeout="01:00:00" openTimeout="01:00:00" maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Mtom" transferMode="Streamed"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> </binding> </basicHttpBinding> </bindings>
  • sTI_CI_v1_201302 C# IIS Internet Information Services o IISes un servidor web y un conjunto de servicios para el sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows 2000 o Windows Server 2003. Windows XP Profesional incluye una versión limitada de IIS. Los servicios que ofrece son: FTP, SMTP,NNTP y HTTP/HTTPS. Antiguamente se denominaba PWS (Personal Web Server), y actualmente forma parte de la distribución estándar de Windows, de modo que no se necesita una licencia extra para instalarlo. Este servicio convierte a una PC en un servidor web para Internet o una intranet, es decir que en las computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente. Los servicios de Internet Information Services proporcionan las herramientas y funciones necesarias para administrar de forma sencilla un servidor web seguro.
  • sTI_CI_v1_201302 C# IIS Versiones •IIS 1.0.- Proporciona la opción de la arquitectura cliente servidor para Windows 95. •IIS 2.0.- Soporta plugins, extensiones de Microsoft FrontPage. •IIS 3.0.- Paginas Active Server, conexiones con bases de datos de Microsoft a través de Actives Data Object y ODBC. •IIS 4.0.- Microsoft Management Console (MMC). •IIS 5.0.- Administración remota de IIS y otros servicios de Windows. •IIS 6.0.- Utilización de autenticación en Passport, Proxy y Firewall. •IIS 7.0.- Extensibilidad de .NET Y Extensiones ISAPI •IIS 7.5.- Extensiones WebDav y FTP, Filtrado de solicitudes y módulos del Administration Pack.
  • sTI_CI_v1_201302 C# IIS Tipos de canalización administrada Canalización integrada es una canalización de procesamiento de solicitudes unificada que admite módulos de código nativo y código administrado, provoca todos los eventos que expone el objeto HttpApplication, que habilita los módulos HTTP de ASP.NET existentes para trabajar en el modo integrado de IIS 7.0, canalización unificada recibe la primera solicitud de cualquier recurso de una aplicación, se crea una instancia de la clase ApplicationManager que es el dominio de aplicación en el que se procesa la solicitud.
  • sTI_CI_v1_201302 C# IIS Pool de aplicaciones Son creados a nivel del IIS del web server, típicamente por el administrador web para definir algunos aspectos de seguridad y performance de un conjunto de aplicaciones, se utilizan para administrar web sites y aplicaciones, desde el IIS 5.0
  • sTI_CI_v1_201302 C# IIS Instalación de Framework Panel control>programas>Programas y características>activar o desactivar características Windows Habilitar el IIS Habilitar Microsoft .NET 3.5 WCF Registrar framework C:WindowsMicrosoft.NETFramework64v4.0.30319 aspnet_regiis –i
  • sTI_CI_v1_201302 C# Gracias por su asistencia
  • Servicios Estratégicos en Tecnologías de Información S. de R.L. de C.V. Av. de las Granjas No. 155 Int. 4 Col. Jardín Azpeitia, 02530 México, Distrito Federal. Oficina. 55906817 Twitter. @serTI_MX linkedIn: http://linkedin.com/in/serti info@serti.com.mx www.serti.com.mx