martes, 27 de julio de 2010

.NET : Comunicación Máster Page y ContentPlaceHolder

Hace poco un compañero de trabajo tenia un problema .
"Queria tener un botón en el Máster Page con el cual al seleccionar el botón invoque una función que se encuentre dentro del ContentPlaceHolder"


Pasos :

1:Crear un Master Page




Codigo Master.


using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class EjemploMaster : System.Web.UI.MasterPage

{
//Al crear un evento EventHandeler me permite delegar el metodo que va ser invocado
public event EventHandler Btn_ContentPlaceHolder;

protected void Page_Load(object sender, EventArgs e)
{
}

protected void btn_Click(object sender, EventArgs e)
{
// ir a la funcion Btn_ContentPlaceHolder del ContentPlaceHolder
Btn_ContentPlaceHolder(sender, e);
}

}



2. Pagina1.aspx


<%@ Page Language="C#" MasterPageFile="~/EjemploMaster.master" AutoEventWireup="true" CodeFile="Pagina1.aspx.cs" Inherits="Pagina1" Title="Untitled Page" %>
<%@ MasterType VirtualPath="~/EjemploMaster.master" %>
<%--NOTA IMPORTANTE YA QUE CREO UNA REFERENCIA AL MASTER PAGE--%>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
</asp:Content>

Codigo Pagina1.aspx

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Pagina1 : System.Web.UI.Page
{

protected void Page_Load(object sender, EventArgs e)
{
//Sirve para invocar al metodo al cual se va acceder
EjemploMaster myMaster;
myMaster = Master;
myMaster.Btn_ContentPlaceHolder += new System.EventHandler(Btn_ContentPlaceHolder);
}

protected void Btn_ContentPlaceHolder(object sender, System.EventArgs e)

{ string mensaje = "<script lenguage='JavaScript'>" +
"alert('Se selecciono la funcion del ContentPlaceHolder')" +
"</script>";
Page.RegisterStartupScript("Mensaje", mensaje);
}

}


Resultado




Descargar Solución

viernes, 16 de julio de 2010

Rational Rose - Manual del Data Modeler

Un pequeño manual de como pasar del Modelo Logico a generar el Scprit de cualquier Base de Datos en Rational Rose

Manual DATA MODELER
Pasos
1.Creamos una carpeta en el Logical View, un class diagram y luego tres clases tomaremos como ejemplo.




2.Creamos los atributos para las siguientes clases. Nos ubicamos en la clase correspondiente, damos clic derecho, openSpecification, la pestaña Attribute.



3.Escogemos el tipo de Dato.



4.Escogemos el tipo de Dato referencial.



5.En al Pestaña Details del atributo seleccionar la opcion By Value



6.En openSpecification seleccionar la opcion Persistens. (importante)



7.Después de tener el modelo Logico, En componentView Clic derecho.



8.En el Logical View, se creara automáticamente 2 carpetas, Global Data Types y Shemas. Click Derecho a DB_0, openSpecification.



9.Escogeremos el tipo de Base de Datos a utilizar en este caso Oracle 8i.



10.Clic derecho a Shemas y seguir la relacion de abajo.


11.Le damos clic derecho y le damos Data Model Diagram




12.Nos ubicamos en Modelo Fisico y le damos Transform to Data Model.



13.Posteriormente nos aparece este cuadro q nos indica en donde se creara nuestra tabla para oracle.



14.Vemos q automáticamente se crearon las tablas, es importante anotar q si se debe tener un buen modelo Lógico, con las asociaciones y Multiplicidades a tener cada clase.




15.Nos ubicamos en las Tablas ya creadas, Clik Derecho, OpenSpecification



16. Aca corregimos el tipo de Dato asignado por default por Rational, y en este caso por ser Código, le ponemos Char, y desde luego le revaloramos la dimensión por ejemplo a 3, este ultimo también es asignado por el Racional por default con 255. Así seguido corregir las otras dos tablas.



17.Aca un ejemplo con el siguiente atributo de la tabla T_Producto



18.Luego para Importar al Oracle ubicarse en :



19.Darle a Next.



20.Darle a Next.



21.¡Atención!. En User Name(Ponemos el nombre de nuestro usuario creado en oracle en este caso JUAN) Password(Aca la contraseña de nuestro Usuario) Servicio(Aca el nombre del mismo, tal cual esta en el oracle en nuestro caso el servico es JuanCarlos mirar bien el grafico de oracle.)





22.Llenamos los Campos.



23.Dar a Finish.




24. Comprobamos en el Oracle, en el Servicio, en este caso JUANCARLOS, Shema,Table,Juan(Este ultimo se crea automáticamente.)



25.Si queremos crear nuestro Script hacemos:



26.Next


27.Damos Next.



28.Acá le damos click a Browse.., Aca le decimos al Rational donde queremos guardar nuestro Script y con q nombre.


29. En este caso en la Carpeta DataModel(Script), lo guardaremos con el nombre DataMScript. Luego dar Siguiente.



30.Luego Finísh.



31.Ahora Comprobamos o.k.!, lo abrimos con un block de notas.



32. Bueno Gente Tarea Cumplida.