<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>El blog de beto0o</title>
	<atom:link href="http://skorer87.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://skorer87.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Thu, 01 Oct 2009 00:03:21 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='skorer87.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>El blog de beto0o</title>
		<link>http://skorer87.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://skorer87.wordpress.com/osd.xml" title="El blog de beto0o" />
	<atom:link rel='hub' href='http://skorer87.wordpress.com/?pushpress=hub'/>
		<item>
		<title>AJAX + PHP</title>
		<link>http://skorer87.wordpress.com/2009/10/01/ajax-php/</link>
		<comments>http://skorer87.wordpress.com/2009/10/01/ajax-php/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 00:03:21 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=55</guid>
		<description><![CDATA[Despues de mucho tiempo sin postear nada hoy vengo para postear un pequeño articulo de como usar Ajax con PHP. Como ya sabran la gran mayoria Ajax es la tecnica que se utiliza para hacer peticiones al servidor sin tener que recargar la pagina que hace la peticion al servidor. Lo que tratare de explicar [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=55&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Despues de mucho tiempo sin postear nada hoy vengo para postear un pequeño articulo de como usar Ajax con PHP. Como ya sabran la gran mayoria Ajax es la tecnica que se utiliza para hacer peticiones al servidor sin tener que recargar la pagina que hace la peticion al servidor.</p>
<p>Lo que tratare de explicar es el proceso de Login  los datos seran introducidos en un formulario HTML</p>
<p>Bueno ahora tratare de explicar un poco como realizar esta acciones</p>
<ol>
<li>Lo primero que haremos es crear un archvio JavaScript que se llamara ajax.js</li>
<li>Una ves creado este archivo agregaremos el siguiete codigo</li>
</ol>
<p>var xmlHttp =  createXmlHttpRequestObject();</p>
<p>function createXmlHttpRequestObkect()<br />
{<br />
var Http;<br />
try<br />
{<br />
//Objeto para las llamadas asicronas al servidor<br />
Http = new XMLHttpRequest();<br />
}<br />
catch(e)<br />
{<br />
//es intermet explorer6 o anterior<br />
var XmlHttpVersions = new Array(&#8220;MSXML2.XMLHTTP.6.0&#8243;,<br />
&#8220;MSXML2.XMLHTTP.5.0&#8243;,<br />
&#8220;MSXML2.XMLHTTP.4.0&#8243;,<br />
&#8220;MSXML2.XMLHTTP.3.0&#8243;,<br />
&#8220;MSXML2.XMLHTTP&#8221;,<br />
&#8220;Microsoft.XMLHTTP&#8221;);<br />
for(var i=0; i&lt;XmlHttpVesions.length &amp;&amp; !xmlHttp;i++)<br />
{<br />
try<br />
{<br />
Http =  new ActiveXObject(XmlHttpVersions[i]);<br />
}<br />
catch(e){}<br />
}<br />
}<br />
if(!Http)<br />
alert(&#8220;Error al crear el objeto XMLHttpRequest.&#8221;);<br />
else<br />
return Http;<br />
}</p>
<p>Despues crearemos un archivo que se llamara proceso.js</p>
<p>function processLogin()<br />
{<br />
var user = document.getElementById(&#8220;usr&#8221;).value;<br />
var pwd = document.getElementById(&#8220;pwd&#8221;).value;</p>
<p>if(user == &#8220;&#8221; || pwd == &#8220;&#8221;)<br />
{<br />
alert(&#8220;No deje campos vacios&#8221;);<br />
return;<br />
}</p>
<p>//only continue if xmlHttp isn&#8217;t void<br />
if (xmlHttp)<br />
{<br />
try<br />
{<br />
var usr = document.getElementById(&#8220;usr&#8221;).value;<br />
var pwd = document.getElementById(&#8220;pwd&#8221;).value;<br />
var params = &#8220;usr=&#8221;+usr+&#8221;&amp;pwd=&#8221;+pwd;<br />
xmlHttp.open(&#8220;GET&#8221;,&#8221;login.php?&#8221;+params,true);<br />
xmlHttp.onreadystatechange =  handleRequestStateChangeLogin;<br />
xmlHttp.send(null);<br />
}<br />
//display the error in case of failure<br />
catch(e)<br />
{<br />
alert(&#8220;Can&#8217;t connect to server:\n&#8221;+e.toString());<br />
}<br />
}<br />
}</p>
<p>function handleRequestStateChangeLogin()<br />
{<br />
//when readyState is 4, we are ready to read the server response<br />
if(xmlHttp.readyState == 4)<br />
{<br />
//continue only if HTTP status is OK<br />
if(xmlHttp.status == 200)<br />
{<br />
try<br />
{<br />
//do something with the response from server<br />
handleServerResponseLogin();<br />
}<br />
catch(e)<br />
{<br />
//display error message<br />
alert(&#8220;Error reading the response: &#8220;+e.toString());<br />
}<br />
}<br />
else<br />
{<br />
//display status message<br />
alert(&#8220;There was a problem retrivering the data:\n&#8221;+xmlHttp.statusText);<br />
}<br />
}<br />
}</p>
<p>function handleServerResponseLogin()<br />
{<br />
// retrieve the server&#8217;s response packaged as an XML DOM object<br />
var xmlResponse = xmlHttp.responseXML;<br />
// catching potential errors with IE and Opera<br />
if (!xmlResponse || !xmlResponse.documentElement)<br />
throw(&#8220;Invalid XML structure:\n&#8221; + xmlHttp.responseText);<br />
// catching potential errors with Firefox<br />
var rootNodeName = xmlResponse.documentElement.nodeName;<br />
if (rootNodeName == &#8220;parsererror&#8221;)<br />
throw(&#8220;Invalid XML structure:\n&#8221; + xmlHttp.responseText);<br />
// getting the root element (the document element)<br />
xmlRoot = xmlResponse.documentElement;<br />
// testing that we received the XML document we expect<br />
if (rootNodeName != &#8220;response&#8221; || !xmlRoot.firstChild)<br />
throw(&#8220;Invalid XML structure:\n&#8221; + xmlHttp.responseText);<br />
// the value we need to display is the child of the root &lt;response&gt;<br />
responseText = xmlRoot.firstChild.data;<br />
// display the user message</p>
<p>if(responseText==&#8221;true&#8221;)<br />
{<br />
alert(&#8220;Usuario Correcto.&#8221;);<br />
location.href=&#8221;index.html&#8221;;<br />
}<br />
else<br />
alert(&#8220;Nombre de usuario y/o Password incorrectos.\nVuelva a intentarlo&#8221;);<br />
}</p>
<p>Despues creamos el archivo PHP la cual hara la consulta a la base de datos para validar el usuario y password introducio por el usuario</p>
<p>&lt;?php</p>
<p>require(&#8220;conexion.php&#8221;);<br />
header(&#8216;Content-Type: text/xml&#8217;); //Establecemos que php regrasara un documento XML</p>
<p>$usr = $_GET['usr'];  //obteemos el usuario introducio por el usuario en la pagina HTML<br />
$pwd = $_GET['pwd'];//obteemos el pass introducio por el usuario en la pagina HTML</p>
<p>$query = &#8220;SELECT COUNT(*) FROM usuarios WHERE usuario=&#8217;$usr&#8217; AND password=&#8217;$pwd&#8217;&#8221;;<br />
$resQuery = mysql_query($query, $conexion);<br />
$count = mysql_fetch_array($resQuery);<br />
//echo $count[0];</p>
<p>$result;</p>
<p>if($count[0] == 0)<br />
{<br />
$result = &#8220;false&#8221;;<br />
}<br />
else<br />
{<br />
//Autenticacion del usuario correcta<br />
$result = &#8220;true&#8221;;<br />
}</p>
<p>$dom = new DOMDocument();<br />
// create the root &lt;response&gt; element and add it to the document<br />
$response = $dom-&gt;createElement(&#8216;response&#8217;);<br />
$dom-&gt;appendChild($response);<br />
// add the calculated sqrt value as a text node child of &lt;response&gt;<br />
$responseText = $dom-&gt;createTextNode($result);<br />
$response-&gt;appendChild($responseText);<br />
// build the XML structure in a string variable<br />
$xmlString = $dom-&gt;saveXML();<br />
// output the XML string<br />
echo $xmlString;</p>
<p>?&gt;</p>
<p>Y por ultimo creamos la pagina HTML que hara la llamada</p>
<p>&lt;table align=&#8221;center&#8221;&gt;<br />
&lt;tr &gt;<br />
&lt;td &gt;Usuario:&lt;/td&gt;<br />
&lt;td  &gt;&lt;input type=&#8221;text&#8221; id=&#8221;usr&#8221;  width=&#8221;180&#8243;/&gt;<br />
&lt;/tr&gt;<br />
&lt;tr &gt;<br />
&lt;td&gt;Password:&lt;/td&gt;<br />
&lt;td &gt;&lt;input type=&#8221;password&#8221; id=&#8221;pwd&#8221;  width=&#8221;180&#8243;/&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr &gt;<br />
&lt;td&gt;&lt;/td&gt;<br />
&lt;td align=&#8221;right&#8221;&gt;&lt;input type=&#8221;button&#8221; value=&#8221;Iniciar Sesion&#8221; onclick=&#8221;processLogin()&#8221;/&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/55/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=55&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2009/10/01/ajax-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>
	</item>
		<item>
		<title>Etablecer una Imagen de Fondo en un Formulario MDI</title>
		<link>http://skorer87.wordpress.com/2009/06/16/etablecer-una-imagen-de-fondo-en-un-formulario-mdi/</link>
		<comments>http://skorer87.wordpress.com/2009/06/16/etablecer-una-imagen-de-fondo-en-un-formulario-mdi/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 23:40:21 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programacion]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=52</guid>
		<description><![CDATA[Hacen unos dias mientras empezaba a diseñar la interfaz de usuario para una nueva aplicacion para la empresa, me tope con la necesidad de hacer esa interfaz un formulario MDI. Como ya sabe al hacer un formulario MDI el fondo del formulacion cambia a un Gris un poco desagradable a la vista y pues dicha [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=52&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hacen unos dias mientras empezaba a diseñar la interfaz de usuario para una nueva aplicacion<br />
para la empresa, me tope con la necesidad de hacer esa interfaz un formulario MDI. Como ya<br />
sabe al hacer un formulario MDI el fondo del formulacion cambia a un Gris un poco desagradable<br />
a la vista y pues dicha aplicacion que estoy desarrollando necesita ser un poco agradable a la<br />
vista. Investigando por hay me tope con un fragmento de codigo para pintar una imagen en un<br />
formulario al cual le agrege una cuantas lineas para resolver este problema:</p>
<address><em>primero</em>:</address>
<address>
</address>
<address>A nivel de la clase declararemos un objeto MdiClient la cual representa un formulario que puede contener formularios hijos y un Objeto Image.</address>
<address>
</address>
<address><span style="color:#0000ff;">public class</span> <span style="color:#339966;">mdiForm</span></address>
<address>{</address>
<address> <span style="color:#0000ff;">private </span><span style="color:#339966;">MdiClient </span>ctlMDI; </address>
<address> <span style="color:#0000ff;">private </span><span style="color:#339966;">Image </span>img;<br />
</address>
<address>}</address>
<address>
</address>
<address>El segundo paso en el Evento Load del Formulario escribir el Siguiente codigo:</address>
<address>
</address>
<address><span style="color:#0000ff;">private void</span> <span style="color:#000000;">mdiForm</span>_Load(<span style="color:#0000ff;">object </span>sender, <span style="color:#339966;">EventArgs </span>e)<br />
{<br />
<span style="color:#0000ff;">foreach </span>(<span style="color:#339966;">Control </span>ctl in <span style="color:#0000ff;">this</span>.Controls)<br />
{<br />
<span style="color:#0000ff;">try</span><br />
{<br />
ctlMDI = (<span style="color:#339966;">MdiClient</span>)ctl;<br />
ctlMDI.Paint += PintarFondo;<br />
}<br />
<span style="color:#0000ff;">catch </span>(<span style="color:#339966;">InvalidCastException </span>ex)<br />
{<br />
}<br />
}</address>
<address>}</address>
<address>En este Evento lo que haces es tratar de convertir el Formulario a un Objeto MdiClient lo cual lo hacemos recorriendo todos los controles y despues asignar un metodo al evento Paint del objeto MdiClient</address>
<address>
</address>
<address>El siguiente paso es escribir el codigo del Metodo que asignamos al Evento Paint del objeto MdiClient este Metodo es el encargado de Pintar la Imagen en el Fondo del Formulario MDI:</address>
<address>
</address>
<address><span style="color:#0000ff;">private void</span> PintarFondo(<span style="color:#0000ff;">object </span>sender, <span style="color:#339966;">PaintEventArgs </span>e)<br />
{<br />
<span style="color:#0000ff;">if </span>(ctlMDI.Width &gt;= 1 &amp;&amp; ctlMDI.Height &gt;= 1)<br />
{ </address>
<address> <span style="color:#0000ff;">if</span>( img != <span style="color:#0000ff;">null </span>)<br />
{ </address>
<address> <span style="color:#339966;">Graphics </span>grf = e.Graphics;</address>
<address> grf.DrawImage(img, 0, 0, ctlMDI.Width, ctlMDI.Height);<br />
}</address>
<address> }<br />
}</address>
<address>
</address>
<address>Y por ultimo escribiremos un metodo para obtener una Imagen desde archivo y la guardaremos en el objeto Image declarado a nivel clase.</address>
<address>
</address>
<address><span style="color:#0000ff;">private void</span> ObtenerImagen()<br />
{<br />
<span style="color:#0000ff;">try</span><br />
{<br />
img = <span style="color:#339966;">Image</span>.FromFile(<span style="color:#339966;">Application</span>.StartupPath + <span style="color:#800000;">@&#8221;\fondo.jpg&#8221;</span>);<br />
}<br />
<span style="color:#0000ff;">catch </span>(System.IO.<span style="color:#339966;">FileNotFoundException</span>)<br />
{<br />
img = <span style="color:#0000ff;">null</span>;<br />
}<br />
<span style="color:#0000ff;">catch </span>(<span style="color:#339966;">OutOfMemoryException</span>)<br />
{<br />
img = <span style="color:#0000ff;">null</span>;<br />
}<br />
<span style="color:#0000ff;">catch </span>(<span style="color:#339966;">Exception</span>)<br />
{<br />
img = <span style="color:#0000ff;">null</span>;<br />
}<br />
}</address>
<address>
</address>
<address>Y de esta forma se pintara la imagen que deses en el fondo de tu Formulario MDI.<br />
</address>
<p><em> </em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=52&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2009/06/16/etablecer-una-imagen-de-fondo-en-un-formulario-mdi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>
	</item>
		<item>
		<title>Trabajando con BackGroundWorker y el ProgressBar</title>
		<link>http://skorer87.wordpress.com/2009/05/26/trabajando-con-backgroundworker-y-el-progressbar/</link>
		<comments>http://skorer87.wordpress.com/2009/05/26/trabajando-con-backgroundworker-y-el-progressbar/#comments</comments>
		<pubDate>Tue, 26 May 2009 17:59:02 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programacion]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=50</guid>
		<description><![CDATA[El BackGroundWorker es un componente  capaz de realizar una tarea asincronamente esto quiere decir que dicha tarea se ejecuta en un hilo independiente al hilo del programa que ejecutara dicha tarea. Esto es necesario a veces cuando tu programa requiere realizar una tarea que se llevara un tiempo considerado en ejecutarse y no quieres que [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=50&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>El BackGroundWorker es un componente  capaz de realizar una tarea asincronamente esto quiere decir que dicha tarea se ejecuta en un hilo independiente al hilo del programa que ejecutara dicha tarea.</p>
<p>Esto es necesario a veces cuando tu programa requiere realizar una tarea que se llevara un tiempo considerado en ejecutarse y no quieres que tu programa se quede colgado mientras se realiza dicha tarea, esto se soluciona utilizando el backGrounWorker.</p>
<p> </p>
<p>Pasos a Seguir:</p>
<p>Antes que nada tenemos que añadir un componente BackGroundWorker, Componente ProgressBar y un Control Button. Seguido de lo anterior establecer la propiedad WorkerReportsProgess del BackGroundWorker en Verdadero(True).</p>
<p>Despues no iremos al evento DoWork este evento es el encarado de ejecutar la tarea asincronamente, en este evento programaremos una tarea que tiempo en ejecutarse.</p>
<p>private void backgroundWorker1_DoWork()<br />
{<br />
   for (int i = 0; i &lt; 100; i++)<br />
            {<br />
                System.Threading.Thread.Sleep(2000);<br />
                //indicamos al backGroundWorker el porcentaje realizado<br />
                //  de la tarea<br />
                backgroundWorker1.ReportProgress(i);<br />
            }<br />
}</p>
<p>En seguida escribiremos el siguiente codigo en el evento ProgressChanged:</p>
<p> private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)<br />
        {<br />
            //Actualiza el ProgressBar<br />
            progressBar1.Value = e.ProgressPercentage;<br />
        }</p>
<p>En el evento Click del Control Button escribimos el siguiente codigo que es el que inicia la tarea asicronamente</p>
<p>backgroundWorker1.RunWorkerAsync();</p>
<p>y Finalmente en el evento RunWorkerCompleted del BackGroundWorker escribiremos el siguiente codigo ke nos indicara que la tarea a terminado</p>
<p> private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)<br />
        {<br />
             MessageBox.Show(&quot;Tarea Terminada&quot;);<br />
        }</p>
<p>Como veran es algo muy sencillo de utilizar pero de gran ayuda al realizar tareas que tardaran gran tiempo en ejecutarse.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=50&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2009/05/26/trabajando-con-backgroundworker-y-el-progressbar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>
	</item>
		<item>
		<title>Generar documentos PDF con ASP .NET</title>
		<link>http://skorer87.wordpress.com/2008/12/11/generar-documentos-pdf-con-asp-net/</link>
		<comments>http://skorer87.wordpress.com/2008/12/11/generar-documentos-pdf-con-asp-net/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 00:19:12 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[ASP .NET]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=45</guid>
		<description><![CDATA[A continuacion tratare de explicar como generar archivos PDF con una libreria llamada iTextSharp que inicialmente fue desarrollada para JAVA pero fue portada para ser utilizada con la plataforma .NET primero lo que tenemos que hacer es descargar la libreria (itextsharp.dll) de la siguiente pagina: http://sourceforge.net/projects/itextsharp/ despues de haber descargado la libreria la incluiremos como [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=45&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A continuacion tratare de explicar como generar archivos PDF con una libreria llamada iTextSharp que inicialmente fue desarrollada para JAVA pero fue portada para ser utilizada con la plataforma .NET  primero lo que tenemos que hacer es descargar la libreria (itextsharp.dll) de la siguiente pagina:</p>
<p>http://sourceforge.net/projects/itextsharp/  despues de haber descargado la libreria la incluiremos como referencia a la pagina.</p>
<p><img class="alignnone size-full wp-image-44" title="uno" src="http://skorer87.files.wordpress.com/2008/12/uno.jpg?w=450&#038;h=280" alt="uno" width="450" height="280" /></p>
<p>Despues importamos los espacios de nombres necesarios para generar los archivos PDF</p>
<p>using iTextSharp.text;<br />
using iTextSharp.text.pdf;</p>
<p>Y ademas incluiremos el espacio de nombres<br />
using System.IO;</p>
<p>Despues agregaremos un bontrol Button al Web Form el cual sera utulizado para ejecutar el codigo que generare el archivo PDF</p>
<p>En el evento click del boton incluiremos el siguiente codigo.</p>
<p>protected void Button1_Click(object sender, EventArgs e)<br />
{<br />
MemoryStream MStream = new MemoryStream();</p>
<p>Document document = new Document(PageSize.A4, 80, 50, 30, 65);<br />
try<br />
{<br />
PdfWriter writer = PdfWriter.GetInstance(document, MStream);<br />
document.Open();<br />
//document.Add(new iTextSharp.text.Paragraph(&#8220;This is test and must work&#8221;));</p>
<p>Paragraph parrafo = new Paragraph(&#8220;Este es un ejemplo para crear archivos PDF con ASP .NET e iTextSharp\nDesarrollado por Heriberto Montoya Macario&#8221;);<br />
document.Add(parrafo);</p>
<p>//Creamos una tabla con 3 columnas y 1 renglon<br />
iTextSharp.text.Table tabla = new iTextSharp.text.Table(3, 2);<br />
Phrase frase1 = new Phrase(&#8220;Heriberto&#8221;, new Font(2,10,0));<br />
Phrase frase2 = new Phrase(&#8220;Montoya&#8221;, new Font(2, 10, 0));<br />
Phrase frase3 = new Phrase(&#8220;Macario&#8221;, new Font(2, 10, 0));</p>
<p>Chunk chunk = new Chunk(&#8220;Hello world&#8221;, FontFactory.GetFont(FontFactory.COURIER, 20, Font.ITALIC, new Color(255, 0, 0)));</p>
<p>tabla.AddCell(frase1);<br />
tabla.AddCell(frase2);<br />
tabla.AddCell(frase3);</p>
<p>Cell cell = new Cell(chunk);<br />
tabla.AddCell(cell);</p>
<p>document.Add(tabla);</p>
<p>document.Close();<br />
}<br />
catch (Exception Error)<br />
{<br />
throw Error;<br />
}<br />
HttpContext.Current.Response.Buffer = true;<br />
HttpContext.Current.Response.ClearContent();<br />
HttpContext.Current.Response.ClearHeaders();<br />
HttpContext.Current.Response.ContentType = &#8220;application/pdf&#8221;;<br />
HttpContext.Current.Response.AddHeader(&#8220;Content-Dispositio&#8221;, &#8220;attachment;filename=myPDFNew.pdf&#8221;);<br />
HttpContext.Current.Response.BinaryWrite(MStream.GetBuffer());<br />
HttpContext.Current.Response.End();<br />
}</p>
<p><img class="alignnone size-full wp-image-46" title="uno1" src="http://skorer87.files.wordpress.com/2008/12/uno1.jpg?w=450&#038;h=278" alt="uno1" width="450" height="278" /></p>
<p>Para mayor informacion del manejo de esta estupenda libreria puede consultar la siguiente pagina:</p>
<p>http://itextsharp.sourceforge.net/tutorial/index.html</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=45&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2008/12/11/generar-documentos-pdf-con-asp-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>

		<media:content url="http://skorer87.files.wordpress.com/2008/12/uno.jpg" medium="image">
			<media:title type="html">uno</media:title>
		</media:content>

		<media:content url="http://skorer87.files.wordpress.com/2008/12/uno1.jpg" medium="image">
			<media:title type="html">uno1</media:title>
		</media:content>
	</item>
		<item>
		<title>Como crear una Pagina de inicio de sesion con ASP .NET</title>
		<link>http://skorer87.wordpress.com/2008/07/29/como-crear-una-pagina-de-inicio-de-sesion-con-asp-net/</link>
		<comments>http://skorer87.wordpress.com/2008/07/29/como-crear-una-pagina-de-inicio-de-sesion-con-asp-net/#comments</comments>
		<pubDate>Tue, 29 Jul 2008 02:08:36 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[ASP .NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Programacion]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=36</guid>
		<description><![CDATA[Introduccion ASP .NET provee varios metodos usados por una aplicacion para auntenticar a un usuario que solicita el acceso a un recurso restringido estos metodos son: * Windows *Forms *Passport *None Para este ejemplo el metodo que se utilizara sera el modo de autenticacion por Forma o Forms Authentication. Los usuarios se validan contra sus credenciales en [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=36&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Introduccion </strong></p>
<p style="text-align:justify;">ASP .NET provee varios metodos usados por una aplicacion para auntenticar a un usuario que solicita el acceso a un recurso restringido estos metodos son:</p>
<p style="text-align:justify;">* Windows<br />
*Forms<br />
*Passport<br />
*None</p>
<p style="text-align:justify;">Para este ejemplo el metodo que se utilizara sera el modo de autenticacion por Forma o Forms Authentication. Los usuarios se validan contra sus credenciales en una fuente de datos. Forms   Authentication proporciona un mecanismo muy flexible de definir los diferentes tipos de usuarios y permisos.</p>
<p style="text-align:justify;"><strong>Paso a Paso. </strong></p>
<p style="text-align:justify;">Lo primero que se debe hacer como es logico es crear un nuevo proyecto WEB para esto iremos al menu Archivo -&gt; Nuevo -&gt; Sitio web y seleccionamos la Opcion &#8220;Sitio Web ASP .NET&#8221;. Lo siguiente que se debera hacer es cambiar el nombre de WebForm que creaa por defualt Visual Studio &#8220;Default.aspx&#8221; por &#8220;Login.aspx&#8221;. Despues de haber cambiado el nombre del WebForm añadiremos un control &#8220;Login&#8221; del cuadro de herraminetas, despues de haber añadido el control Login lo convertiremos en una platilla.</p>
<p><a href="http://skorer87.files.wordpress.com/2008/07/11.jpg"><img class="alignnone size-medium wp-image-38" src="http://skorer87.files.wordpress.com/2008/07/11.jpg?w=300&#038;h=123" alt="" width="300" height="123" /></a></p>
<p style="text-align:justify;">Acontinuacion compilaremos nuestro Sitio web (F5) para que agrege el Archivo Web.config al momento de compilar aparecera un cuadro de dialogo donde preguntara si desea agregar el archivo Web.config:</p>
<p style="text-align:justify;">
<p style="text-align:justify;"><a href="http://skorer87.files.wordpress.com/2008/07/2.jpg"><img class="alignnone size-medium wp-image-39" src="http://skorer87.files.wordpress.com/2008/07/2.jpg?w=300&#038;h=141" alt="" width="300" height="141" /></a></p>
<p style="text-align:justify;">Lo siguiente es cerrar la aplicacion web y despues abrir el archivo Web.confing desde el explorador de soluciones y a continuacion reemplazar el siguiente codigo:</p>
<p style="text-align:left;"><span style="color:#0000ff;">&lt;</span><span style="color:#800000;">authentication</span> <span style="color:#ff0000;">mode</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">Windows</span>&#8220;<span style="color:#0000ff;">/&gt;</span></p>
<p style="text-align:justify;">por el siguiente codigo:</p>
<p style="text-align:left;"><span style="color:#0000ff;">&lt;</span><span style="color:#800000;">authentication</span> <span style="color:#ff0000;">mode</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">Forms</span>&#8220;<span style="color:#0000ff;">&gt;</span><br />
<span style="color:#0000ff;">&lt;</span><span style="color:#800000;">forms</span> <span style="color:#ff0000;">name</span><span style="color:#0000ff;">=</span>&#8220;.<span style="color:#0000ff;">AuthenticationCookie</span>&#8221; <span style="color:#ff0000;">loginUrl</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">Login.aspx</span>&#8221; <span style="color:#ff0000;">protection</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">All</span>&#8221; <span style="color:#ff0000;">timeout</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">60</span>&#8221; <span style="color:#ff0000;">path</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">/</span>&#8220;&gt;<br />
<span style="color:#0000ff;">&lt;</span><span style="color:#800000;">credentials</span> <span style="color:#ff0000;">passwordFormat</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">Clear</span>&#8220;<span style="color:#0000ff;">&gt;</span><br />
<span style="color:#0000ff;">&lt;</span><span style="color:#800000;">user</span> <span style="color:#ff0000;">name</span>=&#8221;<span style="color:#0000ff;">beto0o</span>&#8221; <span style="color:#ff0000;">password</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">123456</span>&#8220;<span style="color:#0000ff;">/&gt;</span><br />
<span style="color:#0000ff;">&lt;</span><span style="color:#800000;">user</span> <span style="color:#ff0000;">name</span>=&#8221;<span style="color:#0000ff;">Tom</span>&#8221; <span style="color:#ff0000;">passworrd</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">65432</span><span style="color:#0000ff;">1</span>&#8220;<span style="color:#0000ff;">/&gt;</span><br />
<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">credentials</span><span style="color:#0000ff;">&gt;</span><br />
<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">forms</span><span style="color:#0000ff;">&gt;</span><br />
<span style="color:#0000ff;">&lt;/</span><span style="color:#800000;">authentication</span><span style="color:#0000ff;">&gt;</span></p>
<p style="text-align:justify;">Donde los tags  <span style="color:#0000ff;">&lt;</span><span style="color:#800000;">user</span> <span style="color:#ff0000;">name</span>=&#8221;<span style="color:#0000ff;">beto0o</span>&#8221; <span style="color:#ff0000;">password</span><span style="color:#0000ff;">=</span>&#8220;<span style="color:#0000ff;">123456</span>&#8220;<span style="color:#0000ff;">/&gt; </span>en la parte name sera el nombre de usuario con el que se logeara el usuario y password sera la contraseña del usuario.</p>
<p style="text-align:justify;">El siguiente paso es escribir el codigo para validar al usuario que se desee logear en la pagina. Lo primero que debemos hacer es ir al evento Click del boton del control Login que anterior mente agregamos al WenForm y escribier el siguiente Codigo:</p>
<p style="text-align:left;"><span style="color:#0000ff;">protected void</span> LoginButton_Click(<span style="color:#0000ff;">object</span> sender, <span style="color:#008080;">EventArgs</span> e)<br />
{<br />
<span style="color:#0000ff;">if</span> (<span style="color:#008080;">FormsAuthentication</span>.Authenticate(Login1.UserName, Login1.Password))<br />
{<br />
Session[<span style="color:#800000;">"login"</span>] = <span style="color:#800000;">&#8220;true&#8221;</span>;<br />
Login1.FailureText = <span style="color:#800000;">&#8220;Usuario Aceptado&#8221;</span>;<br />
Response.Redirect(<span style="color:#800000;">&#8220;Default.aspx&#8221;</span>);<br />
}<br />
<span style="color:#0000ff;"> else</span><br />
{<br />
Login1.FailureText = <span style="color:#800000;">&#8220;Error al iniciar Sesion&#8221;</span>;<br />
}</p>
<p style="text-align:left;">}</p>
<p style="text-align:justify;">Despues en el Evento Load del WebForm escribimos el siguiente codigo:</p>
<p style="text-align:left;"><span style="color:#0000ff;">protected void</span> Page_Load(<span style="color:#0000ff;">object</span> sender, <span style="color:#008080;">EventArgs</span> e)<br />
{<br />
<span style="color:#0000ff;">if</span> (!Page.IsPostBack)<br />
{<br />
Session[<span style="color:#800000;">"login"</span>] = <span style="color:#800000;">&#8220;false&#8221;</span>;<br />
}<br />
}</p>
<p style="text-align:justify;">Lo siguiente que se debe hacer es agregar un nuevo formulario web degar el nombre por default &#8220;Default.aspx&#8221;, despues agregar un control Label y en el evento Load del nuevo formulario escribir el siguiente codigo:</p>
<p style="text-align:left;"><span style="color:#0000ff;">protected void</span> Page_Load(<span style="color:#0000ff;">object</span> sender, <span style="color:#008080;">EventArgs</span> e)<br />
{<br />
<span style="color:#0000ff;">if</span> (!Page.IsPostBack)<br />
{<br />
<span style="color:#0000ff;">string</span> sesion = <span style="color:#008080;">Convert</span>.ToString(Session[<span style="color:#800000;">"login"</span>]);<br />
<span style="color:#0000ff;">if</span> (sesion == <span style="color:#800000;">&#8220;true&#8221;</span> )<br />
Label1.Text =<span style="color:#800000;"> &#8220;Usuario Aceptado&#8221;</span>;       }<br />
<span style="color:#0000ff;">el</span><span style="color:#0000ff;">se</span>{<br />
Label1.Text = <span style="color:#800000;">&#8220;Esta pagina solo puede ser accedida por usuarios registrados&#8221;</span>;<br />
}<br />
}</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/skorer87.wordpress.com/36/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/skorer87.wordpress.com/36/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/36/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=36&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2008/07/29/como-crear-una-pagina-de-inicio-de-sesion-con-asp-net/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>

		<media:content url="http://skorer87.files.wordpress.com/2008/07/11.jpg?w=300" medium="image" />

		<media:content url="http://skorer87.files.wordpress.com/2008/07/2.jpg?w=300" medium="image" />
	</item>
		<item>
		<title>Llamadas asicronas a un Xml Web Service</title>
		<link>http://skorer87.wordpress.com/2008/07/24/llamadas-asicronas-a-un-xml-web-service/</link>
		<comments>http://skorer87.wordpress.com/2008/07/24/llamadas-asicronas-a-un-xml-web-service/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 18:49:56 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[Web Services]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=24</guid>
		<description><![CDATA[Introduccion Una llamada asincrona a un servicio web es muy util porque al momento se hacer la llamada al servicio web desde nuestra aplicacion (en el caso de este ejemplo sera una aplicacion Windows) no se quedara colgada esperando la respuesta del servicio web. AL hacer una llamada asicncrona a un servicio web la aplicacion hace la peticion [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=24&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Introduccion</p>
<p></strong></p>
<p>Una llamada asincrona a un servicio web es muy util porque al momento se hacer la llamada al servicio web desde nuestra aplicacion (en el caso de este ejemplo sera una aplicacion Windows) no se quedara colgada esperando la respuesta del servicio web. AL hacer una llamada asicncrona a un servicio web la aplicacion hace la peticion al servicio web y esta no se queda esperando la respuesta del servicio web si no que el control del programa vuelve a la aplicacion pudiendo efectuar otras tareas en la aplicacion mientras la respuesta del servicio web llegua a la aplicacion.</p>
<p><strong>Paso a Paso</strong></p>
<p>Lo primero que debemos hacer es crear nuestro Web Service con Visual Studio 2005. Nos vamos al menu Archivo -&gt;Nuevo -&gt;Sitio Web despues de aver hecho lo anterior en el cuadro de dialogo elegimos la  opcion Servicio Web ASP .NET.</p>
<p><a href="http://skorer87.files.wordpress.com/2008/07/dibujo.jpg"><img class="alignnone size-medium wp-image-25" src="http://skorer87.files.wordpress.com/2008/07/dibujo.jpg?w=300&#038;h=195" alt="" width="300" height="195" /></a></p>
<p>Una vez seleccionada la platilla para el servicio web, en ubucacion seleccionamos la opcion HTTP para que nuestro servico web se guarde dentro de nuestro IIS y despues seleccionar un nombre para el servicio web en nuestro caso se llamara http://localhost/WebService y en Lenguage seleccione el lenguage de su gusto en este caso usaremos C#.</p>
<p>Una vez creado el servicio web ponemos en comentarios el metodo &#8220;Hello World&#8221; del servicio web que tiene por default:</p>
<p>[<span style="color:#008080;">WebMethod</span>]<br />
<span style="color:#0000ff;">public string</span> HelloWorld() {<br />
<span style="color:#0000ff;">return</span> <span style="color:#800000;">&#8220;Hola a todos&#8221;</span>;<br />
}</p>
<p>Una vez comentado quedar ade la siguiente Forma</p>
<p><span style="color:#339966;">//[WebMethod]<br />
//public string HelloWorld() {<br />
//      return &#8220;Hola a todos&#8221;;<br />
//}</span></p>
<p>Una vez comentado el metodo &#8220;Hello World&#8221; creamos nuetro propio metodo para este ejemplo crearemos un metodo que reciva un  parametro de tipo <span style="color:#0000ff;">double</span> y regrese el cuadrado de este. Lo primero que se debe de hacer para crear un metodo dentro de un servicio web es anteponer la sentencia: [<span style="color:#008080;">WebMethod</span>] lo que indica que el metodo siguiente es un metodo del servicio web.</p>
<p>[<span style="color:#008080;">WebMethod</span>]<br />
<span style="color:#0000ff;">public double</span> Cuadrado(<span style="color:#0000ff;">double</span> val)<br />
{<br />
<span style="color:#0000ff;">return</span> <span style="color:#008080;">Math</span>.Pow(val, 2);<br />
}</p>
<p>Lo siguiente que se debe hacer es compilar el servicio web (F5) pero en este caso como lo guardamos dentro de nuestro IIS lo compilamos con Ctrl+F5 una vez que haya creado copiamos las URL del servicio web en esta caso sera: &#8220;http://localhost/WebService/Service.asmx&#8221;.</p>
<p>Ya una vez creado nuestro sevivio web el siguiente pasa es crear nuestra aplicaion windows para consumir  el servicio web antes creado. para crear la aplicacion web nos vamos al menu Archivo-&gt;Nuevo-&gt;Proyecto y en el cuadro de dialogo escogemos la opcion &#8220;Aplicacion para Windows&#8221;.</p>
<p>Una vez creada la aplicacion para Windows agregamos una referencia web para asi hacer referencia al servicio web que antes creamos. Para agregar la referencia web hacemos click con boton derecho en el proyecto en el explorador de soluciones para este ejemplo se llamara &#8220;WindowsApplication1&#8243; y elegimos la opcion Agregar referencia web:</p>
<p><a href="http://skorer87.files.wordpress.com/2008/07/dibujo2.jpg"><img class="alignnone size-medium wp-image-26" src="http://skorer87.files.wordpress.com/2008/07/dibujo2.jpg?w=180&#038;h=300" alt="" width="180" height="300" /></a></p>
<p>Despues se abrira el siguiente cuadro de dialogo donde pegarmos la URL del servicio web que creamos anterior mente.</p>
<p><a href="http://skorer87.files.wordpress.com/2008/07/dibujo3.jpg"><img class="alignnone size-medium wp-image-27" src="http://skorer87.files.wordpress.com/2008/07/dibujo3.jpg?w=300&#038;h=211" alt="" width="300" height="211" /></a></p>
<p>En la parte de Direccion URL pegaremos la direccion URL de nuestro web service, despues<br />
daremos click en el boton &#8220;Ir&#8221;, una vez que demos click en &#8220;Ir&#8221; la caja de texto del nombre del servicio web y el boton &#8220;Agregar Referencia&#8221; se activaran para este ejemplo el nombre del servicio web lo dejaremos tal y como esta: &#8220;localhost&#8221; y finalemnte deremos click en &#8220;Agregar referencia&#8221;</p>
<p>El siguiente paso es agregar un control TextBox, Button y un Label en el formulario de nuestra aplicacion windows, seguido de esto en el codigo de la aplicacion importaremos nuestro servicio web haciendole un &#8220;using&#8221; en la parte del los &#8220;using&#8217;s&#8221;</p>
<p><span style="color:#339966;"><span style="color:#0000ff;">using</span> </span><span style="color:#000000;">System.Windows.Forms;</span><span style="color:#339966;"> <span style="color:#339966;">//codigo por defualt del Visual Studio</span><br />
<span style="color:#0000ff;">using</span> </span><span style="color:#000000;">WindowsApplication1.localhost; </span><span style="color:#339966;"><span style="color:#339966;">//Parte donde importamos el servicio web</span></span></p>
<p><span style="color:#000000;">Una vez importado el serviocio web en el evento Click del Button que agregamos al formulario agregamos el siguiente codigo:</span></p>
<p><span style="color:#0000ff;">private void</span><span style="color:#000000;"> button1_Click(</span><span style="color:#0000ff;">object</span><span style="color:#000000;"> sender, </span><span style="color:#008080;">EventArgs</span><span style="color:#000000;"> e)<br />
{<br />
</span><span style="color:#339966;">//Creamos una instancia del servicio web</span><span style="color:#000000;"><br />
</span><span style="color:#008080;"> Service</span><span style="color:#000000;"> objService = </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> </span><span style="color:#008080;">Service</span><span style="color:#000000;">();</span></p>
<p>objService.CuadradoCompleted += <span style="color:#0000ff;">new</span><span style="color:#000000;"> </span><span style="color:#008080;">CuadradoCompletedEventHandler</span><span style="color:#000000;">(objService_CuadradoCompleted);</span></p>
<p><span style="color:#339966;">//Llamada asincrona al servicio web</span><span style="color:#000000;"><br />
objService.CuadradoAsync(</span><span style="color:#008080;">Convert</span><span style="color:#000000;">.ToDouble(textBox1.Text));<br />
}</span></p>
<p><span style="color:#000000;"></p>
<p></span></p>
<p><span style="color:#000000;"></p>
<p></span></p>
<p>Despues de agregar el codigo anterior al evento click del boton agregamos el siguiente metodo el cual.</p>
<p><span style="color:#0000ff;">void</span> objService_CuadradoCompleted(<span style="color:#0000ff;">object</span> sender, <span style="color:#008080;">CuadradoCompletedEventArgs</span> e)<br />
{<br />
<span style="color:#339966;"> //Asignamos al control Label el resultado de la ejecucion del servicio web</span><br />
label1.Text = <span style="color:#800000;">&#8220;</span><span style="color:#800000;">El cuadrado de &#8221; </span>+ textBox1.Text + <span style="color:#800000;">&#8221; es: &#8221; </span>+ <span style="color:#008080;">Convert</span>.ToString(e.Result);<br />
}<br />
y por ultimo ejecutar la aplicacion para verifcar el resultado<br />
<a href="http://skorer87.files.wordpress.com/2008/07/dibujo4.jpg"><img class="alignnone size-medium wp-image-28" src="http://skorer87.files.wordpress.com/2008/07/dibujo4.jpg?w=300&#038;h=108" alt="" width="300" height="108" /></a></p>
<p>Cabe mencionar que los metodos del servicio web pueden ser mas complejos que los del ejemplo tal y como pueden ser como obtener datos de una base de datos etc.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/skorer87.wordpress.com/24/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/skorer87.wordpress.com/24/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/24/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=24&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2008/07/24/llamadas-asicronas-a-un-xml-web-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>

		<media:content url="http://skorer87.files.wordpress.com/2008/07/dibujo.jpg?w=300" medium="image" />

		<media:content url="http://skorer87.files.wordpress.com/2008/07/dibujo2.jpg?w=180" medium="image" />

		<media:content url="http://skorer87.files.wordpress.com/2008/07/dibujo3.jpg?w=300" medium="image" />

		<media:content url="http://skorer87.files.wordpress.com/2008/07/dibujo4.jpg?w=300" medium="image" />
	</item>
		<item>
		<title>Ultimo dia en el TEC LAGUNA</title>
		<link>http://skorer87.wordpress.com/2008/07/24/mi-ultimo-dia-en-el-tec-laguna/</link>
		<comments>http://skorer87.wordpress.com/2008/07/24/mi-ultimo-dia-en-el-tec-laguna/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 04:40:17 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=16</guid>
		<description><![CDATA[Foto del ultimo dia de clases de toda la carrera en el TEC LAGUNA<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=16&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://skorer87.files.wordpress.com/2008/07/img_0021.jpg"><img class="alignnone size-medium wp-image-17" src="http://skorer87.files.wordpress.com/2008/07/img_0021.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a></p>
<p>Foto del ultimo dia de clases de toda la carrera en el TEC LAGUNA</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/skorer87.wordpress.com/16/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/skorer87.wordpress.com/16/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/16/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=16&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2008/07/24/mi-ultimo-dia-en-el-tec-laguna/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>

		<media:content url="http://skorer87.files.wordpress.com/2008/07/img_0021.jpg?w=300" medium="image" />
	</item>
		<item>
		<title>Como crear una galeria de fotos con ASP .NET</title>
		<link>http://skorer87.wordpress.com/2008/07/24/como-crear-una-galeria-de-fotos-con-asp-net/</link>
		<comments>http://skorer87.wordpress.com/2008/07/24/como-crear-una-galeria-de-fotos-con-asp-net/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 04:10:16 +0000</pubDate>
		<dc:creator>skorer87</dc:creator>
				<category><![CDATA[ASP .NET]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://skorer87.wordpress.com/?p=10</guid>
		<description><![CDATA[Para crear una galeria de fotos el primer paso que se debe hacer es crear un nuevo proyecto con visual studio 2005 que sea un sitio web. Despues de haber creado el sitio web en el WebForm (Default.aspx) que crea por default Visual Studio en el modo de codigo: añadir el siguiente codigo entre los tags &#60;div&#62; &#60;/div&#62; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=10&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Para crear una galeria de fotos el primer paso que se debe hacer es crear un nuevo proyecto con visual studio 2005 que sea un sitio web.</p>
<p>Despues de haber creado el sitio web en el WebForm (Default.aspx) que crea por default Visual Studio</p>
<p>en el modo de codigo:</p>
<p><a href="http://skorer87.files.wordpress.com/2008/07/code.jpg"><img class="alignnone size-medium wp-image-11" src="http://skorer87.files.wordpress.com/2008/07/code.jpg?w=300&#038;h=192" alt="" width="300" height="192" /></a></p>
<p>añadir el siguiente codigo entre los tags &lt;div&gt; &lt;/div&gt;</p>
<p>&lt;table&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;<br />
Selecciona la galería que deseas ver:&lt;br /&gt;<br />
&lt;asp:DropDownList ID=&#8221;cboGallery&#8221; runat=&#8221;server&#8221;            AutoPostBack=&#8221;True&#8221;OnSelectedIndexChanged=&#8221;cboGallery_SelectedIndexChanged&#8221;&gt;<br />
&lt;/asp:DropDownList&gt;<br />
&lt;asp:DataList ID=&#8221;dlsGallery&#8221; runat=&#8221;server&#8221; RepeatColumns=&#8221;5&#8243;&gt;<br />
&lt;ItemTemplate&gt;<br />
&lt;table&gt;<br />
&lt;tr&gt;<br />
&lt;td style=&#8221;border-style:solid; border-width:1px; width:150px; height:150px; text-                  align:center;&#8221;&gt;<br />
&lt;a href=&#8221;Images/Gallery/&lt;%#Eval(&#8220;GalleryID&#8221;)%&gt;/&lt;%#Eval(&#8220;FileName&#8221;)%&gt;&#8221;                          target=&#8221;_blank&#8221;&gt;<br />
&lt;asp:Image ID=&#8221;imgGallery&#8221; runat=&#8221;server&#8221; Height=&#8221;50px&#8221; Width=&#8221;50px&#8221;<br />
ImageUrl=<br />
&#8216;&lt;%#fnFilePath(DataBinder.Eval(Container.DataItem,&#8221;GalleryID&#8221;).ToString(),<br />
DataBinder.Eval(Container.DataItem,&#8221;FileName&#8221;).ToString()) %&gt;&#8217; /&gt;<br />
&lt;/a&gt;<br />
&lt;p style=&#8221;text-align:center;&#8221;&gt;<br />
&lt;a<br />
href=&#8221;Images/Gallery/&lt;%#Eval(&#8220;GalleryID&#8221;)%&gt;/&lt;%#Eval(&#8220;FileName&#8221;)%&gt;&#8221; target=&#8221;_blank&#8221;&gt;<br />
&lt;asp:Label ID=&#8221;lblFileDesc&#8221;<br />
runat=&#8221;server&#8221;<br />
Text=&#8217;&lt;%#Eval(&#8220;FileDescription&#8221;)%&gt;&#8217;&gt;&lt;/asp:Label&gt;<br />
&lt;/a&gt;<br />
&lt;/p&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&lt;/ItemTemplate&gt;<br />
&lt;/asp:DataList&gt;&lt;br /&gt;<br />
&lt;asp:Label ID=&#8221;lblMessage&#8221; runat=&#8221;server&#8221; Text=&#8221;"&gt;&lt;/asp:Label&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;</p>
<p>En modo diseño quedara algo parecido:</p>
<p><a href="http://skorer87.files.wordpress.com/2008/07/thekin_photogallery_02.jpg"><img class="alignnone size-medium wp-image-12" src="http://skorer87.files.wordpress.com/2008/07/thekin_photogallery_02.jpg?w=300&#038;h=200" alt="" width="300" height="200" /></a></p>
<p>Importar los Siguientes espacios de nombres</p>
<p><span style="color:#0000ff;">using</span> System.IO;</p>
<p><span style="color:#0000ff;">using</span> System.Data;</p>
<p>Despues añadir el siguiente codigo dentro del archivo Default.aspx.cs:</p>
<p><span style="color:#339966;">//Dentro de la carpeta  Gallery añadir carpetas con las fotografias que se deseen mostrar</span></p>
<p><span style="color:#0000ff;">string</span> varGalleryFolder =<span style="color:#993300;"> &#8220;C:\\inetpub\\wwwroot\\images\\Gallery&#8221;</span>;</p>
<p><span style="color:#0000ff;">protected void</span> GetFolders(<span style="color:#0000ff;">string</span> prmFolder)<br />
{<br />
<span style="color:#0000ff;">try</span><br />
{<br />
<span style="color:#0000ff;">if</span> (<span style="color:#008080;">Directory</span>.Exists(prmFolder))<br />
{<br />
<span style="color:#0000ff;">string</span>[] arrFolders;<br />
arrFolders = <span style="color:#008080;">Directory</span>.GetDirectories(prmFolder);<br />
<span style="color:#0000ff;">foreach</span> (<span style="color:#0000ff;">string</span> dir <span style="color:#0000ff;">in</span> arrFolders)<br />
{<br />
<span style="color:#008080;">ListItem</span> lst =<span style="color:#0000ff;"> new</span> <span style="color:#008080;">ListItem</span>(dir.Substring(prmFolder.Length + 1),<br />
dir.Substring(prmFolder.Length + 1));<br />
cboGallery.Items.Add(lst);<br />
}<br />
}<br />
<span style="color:#0000ff;">else</span><br />
{<br />
lblMessage.Text =<br />
<span style="color:#800000;">&#8220;No existe el directorio de imágenes&#8221;</span>;<br />
}<br />
}<br />
<span style="color:#0000ff;">catch</span> (<span style="color:#008080;">Exceptio</span><span style="color:#008080;">n</span> ex)<br />
{<br />
lblMessage.Text = ex.Message;<br />
}<br />
}</p>
<p><span style="color:#0000ff;">protected void</span> GetFiles(<span style="color:#0000ff;">string</span> prmFolder)<br />
{<br />
<span style="color:#0000ff;">try</span><br />
{<br />
<span style="color:#0000ff;">string</span>[] arrFiles;<br />
arrFiles =<span style="color:#008080;"> Directory</span>.GetFiles(prmFolder, <span style="color:#800000;">&#8220;*.jpg&#8221;</span>);<br />
<span style="color:#008080;">DataSet</span> dsGallery = <span style="color:#0000ff;">new</span> <span style="color:#008080;">DataSet</span>(<span style="color:#800000;">&#8220;dsGallery&#8221;</span>);<br />
<span style="color:#008080;">DataTable</span> taFile;<br />
<span style="color:#008080;">DataRow</span> rwFile;<br />
<span style="color:#339966;">//DataColumn colFile;</span><br />
taFile = dsGallery.Tables.Add(<span style="color:#800000;">&#8220;Files&#8221;</span>);<br />
taFile.Columns.Add(<span style="color:#800000;">&#8220;GalleryID&#8221;,</span> varGalleryFolder.GetType());<br />
taFile.Columns.Add(<span style="color:#800000;">&#8220;FileName&#8221;,</span> varGalleryFolder.GetType());<br />
taFile.Columns.Add(<span style="color:#800000;">&#8220;FileDescription&#8221;</span>, varGalleryFolder.GetType());</p>
<p><span style="color:#0000ff;">foreach</span> (<span style="color:#0000ff;">string</span> file<span style="color:#0000ff;"> in</span> arrFiles)<br />
{<br />
<span style="color:#339966;">//aqui llenamos el Dataset</span></p>
<p>rwFile = taFile.NewRow();<br />
rwFile[<span style="color:#800000;">"GalleryID"</span>] = prmFolder.Substring(varGalleryFolder.Length + 1); ;<br />
rwFile[<span style="color:#800000;">"FileName"</span>] = file.Substring(prmFolder.Length + 1);<br />
rwFile[<span style="color:#800000;">"FileDescription"</span>] = file.Substring(prmFolder.Length + 1);<br />
taFile.Rows.Add(rwFile);<br />
}</p>
<p>dlsGallery.DataSource = dsGallery.Tables[<span style="color:#800000;">"Files"</span>];</p>
<p><span style="color:#0000ff;">if</span> (dsGallery.Tables[<span style="color:#800000;">"Files"</span>].Rows.Count == 0)<br />
{<br />
lblMessage.Text = <span style="color:#800000;">&#8220;No se encontraron imágenes&#8221;</span>;<br />
}<br />
<span style="color:#0000ff;">else</span><br />
{<br />
lblMessage.Text = <span style="color:#800000;">&#8220;Se encontraron &#8220;</span> +<br />
dsGallery.Tables[<span style="color:#800000;">"Files"</span>].Rows.Count.ToString() +<span style="color:#800000;">&#8221; imágenes&#8221;</span>;<br />
}<br />
dlsGallery.DataBind();<br />
dsGallery.Dispose();<br />
}<br />
<span style="color:#0000ff;">catch</span> (<span style="color:#008080;">Exception</span> ex)<br />
{<br />
lblMessage.Text = ex.Message;<br />
}<br />
}</p>
<p><span style="color:#0000ff;">protected string</span> fnFilePath(<span style="color:#0000ff;">string</span> prmPath, <span style="color:#0000ff;">string</span> prmFileName)<br />
{<br />
<span style="color:#0000ff;">return</span> (<span style="color:#800000;">&#8220;imagenes/Gallery/&#8221;</span> + prmPath +<span style="color:#800000;"> &#8220;/&#8221;</span> + prmFileName);<br />
}<br />
<span style="color:#339966;">//Evento Load del WebForm</span><br />
<span style="color:#0000ff;">protected void</span> Page_Load(<span style="color:#0000ff;">object</span> sender, <span style="color:#008080;">EventArgs</span> e)<br />
{<br />
<span style="color:#0000ff;">try</span><br />
{<br />
<span style="color:#0000ff;">if</span> (!Page.IsPostBack)<br />
{<br />
GetFolders(varGalleryFolder);<br />
GetFiles(varGalleryFolder + <span style="color:#800000;">&#8220;\\&#8221;</span> + cboGallery.SelectedValue.ToString());<br />
}<br />
}<br />
<span style="color:#0000ff;">catch</span> (<span style="color:#008080;">Exception</span> ex)<br />
{<br />
lblMessage.Text = ex.Message;<br />
}<br />
}</p>
<p><span style="color:#339966;">//Evento SelectedIndexChanged del DropDownList</span><br />
<span style="color:#0000ff;">protected void</span> cboGallery_SelectedIndexChanged(<span style="color:#0000ff;">object</span> sender, <span style="color:#008080;">EventArgs</span> e)<br />
{<br />
GetFiles(varGalleryFolder + &#8220;<span style="color:#800000;">\\&#8221;</span> + cboGallery.SelectedValue.ToString());<br />
}</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/skorer87.wordpress.com/10/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/skorer87.wordpress.com/10/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/skorer87.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/skorer87.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/skorer87.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/skorer87.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/skorer87.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/skorer87.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/skorer87.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/skorer87.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=skorer87.wordpress.com&amp;blog=4309947&amp;post=10&amp;subd=skorer87&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://skorer87.wordpress.com/2008/07/24/como-crear-una-galeria-de-fotos-con-asp-net/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/93fb0cbc87ffdb706101cb90b6c1d611?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">skorer87</media:title>
		</media:content>

		<media:content url="http://skorer87.files.wordpress.com/2008/07/code.jpg?w=300" medium="image" />

		<media:content url="http://skorer87.files.wordpress.com/2008/07/thekin_photogallery_02.jpg?w=300" medium="image" />
	</item>
	</channel>
</rss>
