<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7772286514503790971</id><updated>2011-11-27T17:44:24.099-06:00</updated><category term='Codigo para leer desde un webform en asp.net'/><title type='text'>Practicas de programacion en C# y visual basic.net</title><subtitle type='html'>Códigos de programacion</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mikelifenow.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7772286514503790971/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mikelifenow.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>myblog.es/mike</name><uri>http://www.blogger.com/profile/00194044754057082827</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_WLgmnjRhM5s/SPYKry_5C2I/AAAAAAAAACM/nUVtVqC4Qvc/S220/000001.bmp'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7772286514503790971.post-5043761482215843916</id><published>2009-07-10T12:30:00.008-05:00</published><updated>2009-07-10T13:14:32.430-05:00</updated><title type='text'>Hacer un control de usuarios en ASP.NET</title><content type='html'>Para empezar de debe realizar un Login.... Asi&lt;br /&gt;&lt;br /&gt;puede insertar este código&lt;br /&gt;&lt;br /&gt;&lt;form id="form1" runat="server"&gt;&lt;br /&gt;&lt;div style="text-align: center"&gt;&lt;br /&gt;Por favor escriba nombre usuario y contrase¤a para ingresar al sistema&lt;br /&gt;&lt;br /&gt;&lt;asp:Panel ID="MainPanel" runat="server" Height="90px" Width="380px"&lt;br /&gt;BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td width="30%" style="height: 43px"&gt;&lt;br /&gt;Nombre usuario:&lt;/td&gt;&lt;br /&gt;&lt;td width="70%" style="height: 43px"&gt;&lt;br /&gt;&lt;asp:TextBox ID="UsernameText"&lt;br /&gt;runat="server" Width="80%" /&gt;&lt;br /&gt;&lt;asp:RequiredFieldValidator&lt;br /&gt;ID="UsernameRequiredValidator" runat="server"&lt;br /&gt;ErrorMessage="*" ControlToValidate="UsernameText" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;asp:RegularExpressionValidator&lt;br /&gt;ID="UsernameValidator" runat="server"&lt;br /&gt;ControlToValidate="UsernameText"&lt;br /&gt;ErrorMessage="Invalido nombre usuario"&lt;br /&gt;ValidationExpression="[\w ]*" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td width="30%" style="height: 26px"&gt;&lt;br /&gt;Contrase¤a:&lt;/td&gt;&lt;br /&gt;&lt;td width="70%" style="height: 26px"&gt;&lt;br /&gt;&lt;asp:TextBox ID="PasswordText" runat="server"&lt;br /&gt;Width="80%" TextMode="Password" /&gt;&lt;br /&gt;&lt;asp:RequiredFieldValidator ID="PwdRequiredValidator"&lt;br /&gt;runat="server" ErrorMessage="*"&lt;br /&gt;ControlToValidate="PasswordText" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;asp:RegularExpressionValidator ID="PwdValidator"&lt;br /&gt;runat="server" ControlToValidate="PasswordText"&lt;br /&gt;ErrorMessage="Invalido contrase¤a"&lt;br /&gt;ValidationExpression='[\w !"õ$%&amp;amp;/()=\-?\*]*' /&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;asp:Button ID="LoginAction" runat="server"&lt;br /&gt;OnClick="LoginAction_Click" Text="Login" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;asp:Label ID="LegendStatus" runat="server"&lt;br /&gt;EnableViewState="false" Text="" /&gt;&lt;br /&gt;&lt;/asp:Panel&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/form&gt;&lt;br /&gt;&lt;br /&gt;Luego de insertar este código construirá objetos que le ayudarán a controlar un login.&lt;br /&gt;&lt;br /&gt;Ahora, Si usa una base de datos en sql o mysql u otro gestor de base de datos, debe tomar en cuenta la forma de hacer esa conexion...&lt;br /&gt;&lt;br /&gt;Bien ahora puede hacer la consulta de la siguiente forma con la obtencion de los nombres y contraseña que inserte el usuario y validarlo&lt;br /&gt;&lt;br /&gt;en los webform se crean clases de los form. Digamos Login.aspx.cs o Login.aspx.vb , ese archivo pondrán  en el medo del boton...&lt;br /&gt;&lt;br /&gt;private void btnLogin_Click_(object sender, Evend....)&lt;br /&gt;{&lt;br /&gt;    LoginCs  loginacceso = new LoginCs();&lt;br /&gt;/*esta funcion manda los datos a una clase llamada LoginCS datos del login al metodo DatosAcceso, decalrada como publica */&lt;br /&gt;loginacceso.DatosAcceso(txtNombreUser.Tex.Trim(),txtClaveUser.Tex.Trim());&lt;br /&gt;/* se crea una variable de tipo bool para seber la respuesta si hubo un usuario con ese nombre*/&lt;br /&gt;bool Resp;&lt;br /&gt;Resp=loginacceso.Respuesta_Usuario();&lt;br /&gt;/*comparara el si la respuesta fue verdadera*/&lt;br /&gt;if(Resp!=false)&lt;br /&gt;{&lt;br /&gt;/*ora recibira el valor de tipo permiso que tiene el usuario y almacenar en un clase de asp&lt;br /&gt;llamada Session*/&lt;br /&gt;Session["Permiso"]=loginacceso.Tipo_Usuario();&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;/*aqui puedes introducir el resultado de que no exista usuario como un label*/&lt;br /&gt;this.Laber1.Tex="No existe usuario";&lt;br /&gt;}&lt;br /&gt;......&lt;br /&gt;Digamos que en cierta página quieres que cierto usuario con cierto permiso pueda verlo&lt;br /&gt;&lt;br /&gt;entonces pones esto en el medo...&lt;br /&gt;&lt;br /&gt;private void Page_Init(object sender, Event...)&lt;br /&gt;{&lt;br /&gt;if(Session["Permiso] != null)&lt;br /&gt;{&lt;br /&gt;   if(Session["Permiso"].Equals(sessionusuario.Session))&lt;br /&gt;      {&lt;br /&gt;          /*permitira que el usuario pueda ver la pagina*/&lt;br /&gt;       }&lt;br /&gt;     else&lt;br /&gt;      {&lt;br /&gt;        /*puedes introducir un switch que valide el permiso que tiene y redireccionar al usuario a cierta página*/&lt;br /&gt;       }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;......................&lt;br /&gt;&lt;br /&gt;Ahora Crea la clase llamada&lt;br /&gt;&lt;br /&gt;LoginCs y luego introduce esto....&lt;br /&gt;&lt;br /&gt;private string User;&lt;br /&gt;private string Password;&lt;br /&gt;private int Permiso_Usuario;&lt;br /&gt;private bool Resp;&lt;br /&gt;/*controlara la session recivida*/&lt;br /&gt;private static object TipoSession;&lt;br /&gt;&lt;br /&gt;public LoginCS()&lt;br /&gt;{&lt;br /&gt;  this.User=String.Empty;&lt;br /&gt; this.Password=String.Empty;&lt;br /&gt; this.Permiso_Usuario=0;&lt;br /&gt; this.Resp=false;&lt;br /&gt;&lt;br /&gt;TipoSession=Session;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void DatosAcceso(string User,string Password)&lt;br /&gt;{&lt;br /&gt;    this.User=User;&lt;br /&gt;    this.Password=Password;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void AccesoDatos()&lt;br /&gt;{&lt;br /&gt;   /*aqui haces tu conexion de datos*/&lt;br /&gt;&lt;br /&gt;cmdConsulta = "select  Permiso where &lt;a href="mailto:User=@User"&gt;User=@User&lt;/a&gt; and Password= @Password";&lt;br /&gt;SqlParameter pNombre = new SqlParameter("@User", SqlDbType.VarChar);&lt;br /&gt;SqlParameter pContrasenia = new SqlParameter("@Password", SqlDbType.VarChar);&lt;br /&gt;consulta = new SqlCommand(cmdConsulta, "conexion");&lt;br /&gt;consulta.Parameters.Add(pNombre);&lt;br /&gt;consulta.Parameters.Add(pContrasenia);&lt;br /&gt;consulta.Parameters["@Nombre"].Value = this.User.ToString();&lt;br /&gt;consulta.Parameters["@Contrasenia"].Value = this.Password.ToString();&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;consulta.Connection.Open();&lt;br /&gt;this.Permiso_Usuario=Convert.ToInt32( consulta.ExecuteScalar());&lt;br /&gt;if(this.Permiso_Usuario!=o)&lt;br /&gt;{&lt;br /&gt;this.Resp=true;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;/*aqui es sale algo mal de guarda en un string&lt;br /&gt;pero es una obcion lo puedes quitar lo que es el try y catch y finally pero sin quitar lo condigos que se encuentran ahi de try y finaly*/&lt;br /&gt;catch(SqlException ex)&lt;br /&gt;{&lt;br /&gt;this.errorsql = ex.Message.ToString();&lt;br /&gt;}&lt;br /&gt;finally&lt;br /&gt;{&lt;br /&gt;consulta.Connection.Close();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;/*luego la clase de retorno de valores*/&lt;br /&gt;&lt;br /&gt;public bool Respuesta_Usuario()&lt;br /&gt;{&lt;br /&gt;return this.Resp;&lt;br /&gt;}&lt;br /&gt;public int Tipo_Usuario()&lt;br /&gt;{&lt;br /&gt;return this.Permiso_Usuario;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/*alamcena la session de tipo usuario*/&lt;br /&gt;public object Session&lt;br /&gt;{&lt;br /&gt;get { return TipoSession; }&lt;br /&gt;set { TipoSession = value; }&lt;br /&gt;}&lt;br /&gt;..........................&lt;br /&gt;&lt;br /&gt;Y es asi como se haria un buen login con tu propia base de datos y con tus propio roles.&lt;br /&gt;&lt;br /&gt;Cualquier duda este es mi correo &lt;a href="mailto:JMikeCU@gmail.com"&gt;JMikeCU@gmail.com&lt;/a&gt;, respondere con sus dudas con mucho gusto&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7772286514503790971-5043761482215843916?l=mikelifenow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikelifenow.blogspot.com/feeds/5043761482215843916/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7772286514503790971&amp;postID=5043761482215843916' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7772286514503790971/posts/default/5043761482215843916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7772286514503790971/posts/default/5043761482215843916'/><link rel='alternate' type='text/html' href='http://mikelifenow.blogspot.com/2009/07/hacer-un-control-de-usuarios-en-aspnet.html' title='Hacer un control de usuarios en ASP.NET'/><author><name>myblog.es/mike</name><uri>http://www.blogger.com/profile/00194044754057082827</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_WLgmnjRhM5s/SPYKry_5C2I/AAAAAAAAACM/nUVtVqC4Qvc/S220/000001.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7772286514503790971.post-6309136014379781790</id><published>2009-06-19T15:50:00.000-05:00</published><updated>2009-06-19T16:17:31.177-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Codigo para leer desde un webform en asp.net'/><title type='text'>Autocompletar en un texbox.net Visual Studio 2008 mas sql server express</title><content type='html'>Para empezar, es necesario contar con el fremwork 3.5.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;:)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ahora crea una clase de tipo &lt;strong&gt;WebService.asmx &lt;--- Este ultimo es el nombre del archivo tu puedes ponerle otro&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;luego introduce este código:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;using System.Web.Services;&lt;br /&gt;using System.Data;&lt;br /&gt;//Para utilizar la base de datos sql&lt;br /&gt;using System.Data.SqlClient;&lt;br /&gt;//Este es necesario ingresar para utilizar en asp.net&lt;br /&gt;[System.Web.Script.Services.ScriptService]&lt;br /&gt;//-----------------------------------------&lt;br /&gt;public class AutoComplete : WebService&lt;br /&gt;{&lt;br /&gt;public AutoComplete()&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;//Igual este es necesario&lt;br /&gt;[WebMethod]&lt;br /&gt;//------------------------&lt;br /&gt;public string[] GetCompletionList(string prefixText, int count)&lt;br /&gt;{&lt;br /&gt;if (count == 0)&lt;br /&gt;{&lt;br /&gt;count = 10;&lt;br /&gt;}&lt;br /&gt;if (prefixText.Equals("xyz"))&lt;br /&gt;{&lt;br /&gt;return new string[0];&lt;br /&gt;}&lt;br /&gt;//Hace una lectura de los datos con la primera letra que se ingrese&lt;br /&gt;//Se hace una conexion desde una clase que se determina&lt;br /&gt;Conexion Clase_conector = new Conexion();&lt;br /&gt;//------------------------------------------------&lt;br /&gt;/*Ahora se almacena dentro de una variable de tipo string un comando select*/&lt;br /&gt;string sql = "Select * from TipoUsuario Where Usuarios like @prefixText";&lt;br /&gt;// "@prefixText" esta es la variable del metodo que recibe utilizado para sqlserver&lt;br /&gt;/* se lee los datos que extrae junto con laco nexion*/&lt;br /&gt;SqlDataAdapter da = new SqlDataAdapter(sql,Clase_conector.conectar_base_datos());&lt;br /&gt;/* sobre carga el sqladataadapter junto la variable dellenguaje sql y el tipo junto conla variable que recibe el el metodo*/&lt;br /&gt;da.SelectCommand.Parameters.Add("@prefixText", SqlDbType.VarChar, 50).Value = prefixText+ "%";&lt;br /&gt;/*Se pone en una tabla los datos obtenidos para leerlas*/&lt;br /&gt;DataTable dt = new DataTable();&lt;br /&gt;/*en el adaptaadapter se carga las filas del datatable*/&lt;br /&gt;da.Fill(dt);&lt;br /&gt;/*de forma de un array se saca las columnas letra por letra*/&lt;br /&gt;string[] items = new string[dt.Rows.Count];&lt;br /&gt;int i = 0;&lt;br /&gt;/*condicion que permite ver letra por letra*/&lt;br /&gt;foreach (DataRow dr in dt.Rows)&lt;br /&gt;{&lt;br /&gt;/*envia el valor de la tabla que se lee uno por uno*/&lt;br /&gt;items.SetValue(dr["Usuarios"].ToString(), i);&lt;br /&gt;i++;&lt;br /&gt;}&lt;br /&gt;/*retorna el valor que se esta leyendo*/&lt;br /&gt;return items;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;Comentarios :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7772286514503790971-6309136014379781790?l=mikelifenow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mikelifenow.blogspot.com/feeds/6309136014379781790/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7772286514503790971&amp;postID=6309136014379781790' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7772286514503790971/posts/default/6309136014379781790'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7772286514503790971/posts/default/6309136014379781790'/><link rel='alternate' type='text/html' href='http://mikelifenow.blogspot.com/2009/06/autocompletar-en-un-texboxnet-visual.html' title='Autocompletar en un texbox.net Visual Studio 2008 mas sql server express'/><author><name>myblog.es/mike</name><uri>http://www.blogger.com/profile/00194044754057082827</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_WLgmnjRhM5s/SPYKry_5C2I/AAAAAAAAACM/nUVtVqC4Qvc/S220/000001.bmp'/></author><thr:total>0</thr:total></entry></feed>
