<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://geeks.ms/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>El blog de Jesús Velasco - Todos los comentarios</title><link>http://geeks.ms/blogs/jvelasco/default.aspx</link><description>O lo que es lo mismo: alskare&amp;#39;s blog</description><dc:language /><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>Presentación de El Baúl Geeks de Kiquenet</title><link>http://geeks.ms/blogs/jvelasco/archive/2010/11/02/post-de-presentaci-243-n.aspx#202186</link><pubDate>Sat, 17 Dec 2011 19:05:19 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:202186</guid><dc:creator>kiquenet</dc:creator><description>&lt;p&gt;Bueno, aquí estamos, al final me he embarcado en esta aventura que supone todo un reto, y en parte un&lt;/p&gt;
&lt;img src="http://geeks.ms/aggbug.aspx?PostID=202186" width="1" height="1"&gt;</description></item><item><title>[Testing] Pruebas de acoplamiento</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#201246</link><pubDate>Tue, 18 Oct 2011 21:25:25 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:201246</guid><dc:creator>Amigo mío Siempre estas Programando en .NET</dc:creator><description>&lt;p&gt;Por todos creo que son conocidas las pruebas unitarias , integraci&amp;oacute;n , aceptaci&amp;oacute;n y funcionales&lt;/p&gt;
&lt;img src="http://geeks.ms/aggbug.aspx?PostID=201246" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200496</link><pubDate>Wed, 14 Sep 2011 07:21:48 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200496</guid><dc:creator>Crowley</dc:creator><description>&lt;p&gt;Tienes razon cuando dices que si que existe una diferencia entre lo mio y lo de Jesus. &lt;/p&gt;
&lt;p&gt;Pero yo he intentado interpretar este post de una manera mas... &amp;quot;profunda&amp;quot; digamos y no me quedo con lo basico de &amp;quot;acceder desde negocio y tirar millas&amp;quot;. Me quedo con la idea de que con una referencia al contexto Http que mantiene .NET puedes acceder a vbles de sesion y ahorrarte un monton de parametros feotes en un gran numero de funciones. Esa es la idea que importa y, como tal, yo he expuesto la misma solucion que Jesus pero de una forma mas currada para que la gente que se ha puesto taliban (sin ofender, chicos ;) ) sobre incluir una referenca a system.web para acceder a la session fuera del contexto de ASP.NET propiamente dicho vea que, segun mi opinion, no solo es una tecnica que puede ser valida, si no que es bastante util.&lt;/p&gt;
&lt;p&gt;Saludos.&lt;/p&gt;
&lt;p&gt;PD: ¿Se nota mucho que me gusta discutir y filosofar sobre estos temas? :P&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200496" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200482</link><pubDate>Tue, 13 Sep 2011 11:07:36 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200482</guid><dc:creator>Eduard Tomàs i Avellana</dc:creator><description>&lt;p&gt;Crowley,&lt;/p&gt;
&lt;p&gt;En la solución que tu comentas, lo que se ha implementado es un sistema de almacén de datos por usuario (la clase DataAccessFactory). En entornos web lo mapeas a Session y en entornos escritorio queda mapeado a algo static.&lt;/p&gt;
&lt;p&gt;En mi opinión esto es infraestructura, no negocio, en tanto desde las capas de negocio no accederás a Session sino que accederás a ese &amp;quot;almacén de datos por usuario&amp;quot;. Así pues, tu uso yo lo veo legítimo en tanto esto esté aislado de la capa de negocio.&lt;/p&gt;
&lt;p&gt;Siempre hablamos de las 3 capas básicas (presentación, lógica, datos) pero nos olvidamos de la capa transversal de infraestructura, que es donde se ubican esos mecanismos.&lt;/p&gt;
&lt;p&gt;Y efectivamente a partir de ahí todo es dar un paso más: usar una interfaz e inyectar la clase correspondiente (según el entorno &amp;quot;real&amp;quot;) a las capas de negocio.&lt;/p&gt;
&lt;p&gt;En mi opinión tu caso y el que plantea Jesús no son comparables, ya que él si que accede a la sesión desde negocio mientras que tu no. Y ahí radica la diferencia.&lt;/p&gt;
&lt;p&gt;Saludos!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200482" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200479</link><pubDate>Tue, 13 Sep 2011 09:21:39 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200479</guid><dc:creator>Crowley</dc:creator><description>&lt;p&gt;Hmmm. Creo que la situacion no es exactamente igual a como Omar comenta.&lt;/p&gt;
&lt;p&gt;El problema aqui no es el singleton y como implementarlo en un entorno web. El patron singleton es una solucion en algunos casos, no el problema en si.&lt;/p&gt;
&lt;p&gt;El problema es pasar informacion, obtenida desde una capa, al resto de las capas de la arquitecura. Esta informacion se mantendra sin cambios para la sesion de trabajo del usuario (web o escritorio) pero sera diferente para otras sesiones de trabajo de otros usuarios.&lt;/p&gt;
&lt;p&gt;En un entorno de escritorio la solucion es un patron sigleton, pero en un entorno web, un singleton (aunque sea thread safe y con Factory) no nos vale. La unica manera que tenemos de diferenciar al usuario en un entorno web es por su sesion y, por lo tanto, los datos deben estar relacionados con la sesion.&lt;/p&gt;
&lt;p&gt;Una solucion sin acoplamiento es pasar esa informacion desde la capa que no le queda mas remedio usar system.web al resto de las capas como parametro; pero eso significa tener un monton de funciones en las otras capas que acepten un parametro, que digamos queda &amp;quot;feo&amp;quot; junto con el resto de parametros de la funcion que son mucho mas relevantes y descriptivos para la tarea que realice la funcion. Una solucion mejor seria que, para las clases de las capas que realizan los procesos oportunos, se utilizase el contructor para pasarle una unica vez por vida del objeto los datos de sesion y asi esos procesos pueden tomar las decisiones adecuadas consultando su atributo inicializado en el constructor. Esto te ahorra poner en todas las funciones el parametro &amp;quot;feo&amp;quot;. Si se sigue analizando, pasar de este segundo planteamiento a una fabrica que se encargue de instanciar las clases e inyectarles la dependencia a los datos de sesion es un paso natural. Y pasar de esto ultimo a utilizar plantillas genericas y herencia es mas que obvio. El unico sacrificio que hay que hacer es una muy pequeña, controlada y muy localizada dependencia a system.web en la fabrica (y solo si se compila la fabrica para un entorno web), que no en las capas de negocio o acceso a datos.&lt;/p&gt;
&lt;p&gt;En mi opinion el codigo del enlace es aceptable (y por consiguiente utilizar system.web fuera del code behind de una aplicacion web). Por un lado, con las vbles de precompilacion nos quitamos el problema de diferentes archivos de codigo fuente de las fabricas con diferentes implementaciones en diferentes entronos(siempre se podria extender a mas entornos). Por otro lado, el uso de una fabrica que se encarga de crear los objetos de las otras capas inyectandole la dependencia, que inevitablemente tienen, de los datos de sesion del usuario reduce el acoplamiento a system.web(aunque sigue existiendo) a su minima expresion. Y por ultimo, la utilizacion de la herencia y las plantillas genericas, junto con la fabrica en si, hace que sea facilmente modificable y extensible y con pocas posibilidades de introduccion de errores.&lt;/p&gt;
&lt;p&gt;Como puse en el comentario anterior, es un ejemplo basico y habria que maquearlo;quizas usando alguna interfaz, alguna clase abstracta, controlando que algunas funciones no puedan ser sobreescritas en herencia, etc. Pero creo que en general la solucion es aceptable.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200479" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200463</link><pubDate>Mon, 12 Sep 2011 20:59:18 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200463</guid><dc:creator>Victor Vilela J.</dc:creator><description>&lt;p&gt;Estoy de acuerdo con Omar, no recomendaría acceder a elementos de una capa superior desde una inferior ya que esto generaria dependencia y lo que se quiere es crear elementos independientes.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200463" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200446</link><pubDate>Mon, 12 Sep 2011 15:41:30 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200446</guid><dc:creator>Omar del Valle Rodríguez</dc:creator><description>&lt;p&gt;Ni siquiera mirando el ejemplo de Pastebin estoy de acuerdo en la utlización de variables de Session en la capa de negocio.. &lt;/p&gt;
&lt;p&gt;Mirando el enlaces que pones, veo que están creando o intentando crear un Singleton.. para el caso de WEB el static (C#) o Shared (VB) no vale, por la concurrencia (multithread) y lo resuelven usando variables de Session.. (cosa que tampoco haría)&lt;/p&gt;
&lt;p&gt;Aquí te dejo una clara explicación del patrón Singleton (MSDN) con un ejemplo de implementación de un Factory (Fabrica).&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/es-es/library/bb972272.aspx"&gt;msdn.microsoft.com/.../bb972272.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Salu2&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200446" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200443</link><pubDate>Mon, 12 Sep 2011 11:25:57 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200443</guid><dc:creator>Crowley</dc:creator><description>&lt;p&gt;Teneis razon. Poner una referencia a system.web en capa de negocio es feo pero si se organizan bien las cosas puede quedar aceptable.&lt;/p&gt;
&lt;p&gt;Si me permitis os dejo un link a pastebin con un trozo de codigo de un ejemplo de arquitectura para utilizar vbles de sesion en el resto de capas de un sistema utilizando una fabrica que se encarga de inyectar la dependencia con la info de la sesion al construir la instancia.&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://pastebin.com/ZZYVQjiR"&gt;http://pastebin.com/ZZYVQjiR&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Obviamente no habria que usar una cadena a cascoporro como nombre de vble de sesion, eso ya entra en escribir un gestor de vbles de sesion fuertemente tipado (o usando genericos que queda muy bonico), tambien hay que hacer mas gestion de errores, etc. Bueno... que os lo tomeis como un ejemplo superficial :)&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200443" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200437</link><pubDate>Mon, 12 Sep 2011 06:39:08 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200437</guid><dc:creator>Omar del Valle Rodríguez</dc:creator><description>&lt;p&gt;Por el título del Post no tengo duda de que se está accediendo a este código desde la capa de negocio... y esto hace que esté de acuerdo con Eduard en un 1000%.&lt;/p&gt;
&lt;p&gt;Tener una aplicación dividida en capas no es crear una solución con varios proyectos. Capas significa responsabilidades bien definidas, tareas asignadas a cada capa según su definición.&lt;/p&gt;
&lt;p&gt;Te pongo un ejemplo concreto... &lt;/p&gt;
&lt;p&gt;- Si mañana yo necesito crear una aplicación Windows, un servicio o una aplicación de consola y que estas usen tu misma capa de negocio, tendrías un serio problema.&lt;/p&gt;
&lt;p&gt;- Si mañana necesitas exportar mediante una capa de servicios (WCF o Web Services) parte de la lógica de tu aplicación, tendrías un problema&lt;/p&gt;
&lt;p&gt;- Si mañana necesitas que tus capas pasen a ser Niveles para poder distribuir tu aplicación en varios servidores, tendrías un problema.&lt;/p&gt;
&lt;p&gt;No hay que temerle al Refactoring, no somos perfecto y siempre se nos puede quedar algo sea por la razón que sea. Los parches, siempre terminan creando una solución poco estable y dificil de mantener. Por eso me sumo al comentario de Eduard en cuanto a los test unitarios, cuando tienes toda tu lógica controlada por pruebas, nunca te da miedo tocar algo, te atreves con todo.. ;)&lt;/p&gt;
&lt;p&gt;Un salu2&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200437" width="1" height="1"&gt;</description></item><item><title>re: Leer variables Session desde una capa de Negocios</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/09/11/leer-variables-session-desde-una-capa-de-negocios.aspx#200436</link><pubDate>Mon, 12 Sep 2011 06:23:59 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:200436</guid><dc:creator>Eduard Tomàs i Avellana</dc:creator><description>&lt;p&gt;Buenas Jesús!&lt;/p&gt;
&lt;p&gt;Si este código está dentro de la propia capa de presentación como &amp;quot;helper&amp;quot; para ofrecer intellisense a la sesión, no tengo nada que decir.&lt;/p&gt;
&lt;p&gt;Pero si este código está en la capa de lógica de negocio entonces, desde mi punto de vista, se está cometiendo un error brutal: la capa de negocio nunca debe tener referencias a NINGUNA tecnología de presentación concreta. Aquí estás ligando tu capa de lógica a la presentación web. No te &amp;quot;huele&amp;quot; mal una referencia a System.Web desde una capa de negocio? El acceso a las características propias de la API de presentación usada, debe limitarse a la capa de presentación.&lt;/p&gt;
&lt;p&gt;Me da a mi, que en este caso que mencionas, se ha partido de un mal diseño (por la razón que sea) de la capa de lógica y que después cuando ha surgido el nuevo requerimiento, en lugar de modificar adecuadamente la capa de lógica se ha cortado por lo sano y se ha accedido a la sesión.&lt;/p&gt;
&lt;p&gt;Dices en el post que una de las razones para no realizar este refactoring en la capa de negocio es que &amp;quot;seguro que nos dejamos alguna página o procedimiento sin actualizar&amp;quot;. Ese argumento deja traslucir una falta de pruebas (unitarias y de integración) que efectivamente convertirán cualquier refactoring (no sólo este) de la capa de negocio en un auténtico infierno.&lt;/p&gt;
&lt;p&gt;Un saludo! ;-)&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=200436" width="1" height="1"&gt;</description></item><item><title>re: Crear un protector de pantalla con C#</title><link>http://geeks.ms/blogs/jvelasco/archive/2010/11/16/crear-un-protector-de-pantalla-con-c.aspx#199452</link><pubDate>Mon, 15 Aug 2011 11:32:21 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:199452</guid><dc:creator>Jesús Velasco</dc:creator><description>&lt;p&gt;El tiempo de latencia puede ejecutarse como con cualquier otro protector. En la empresa, cuando tuve que ponerlo, lo hice mediante gpo.&lt;/p&gt;
&lt;p&gt;Para lo demás creo que es mejor que cada uno use su imaginación. Cuando lo instalé en la empresa hice que apareciera aleatoriamente una frase entre las que los usuarios insertaban en la intranet...&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=199452" width="1" height="1"&gt;</description></item><item><title>re: Crear un protector de pantalla con C#</title><link>http://geeks.ms/blogs/jvelasco/archive/2010/11/16/crear-un-protector-de-pantalla-con-c.aspx#199430</link><pubDate>Sun, 14 Aug 2011 23:15:48 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:199430</guid><dc:creator>Mike</dc:creator><description>&lt;p&gt;Y para poder añadirle algunas configuraciones mas....el tiempo al que se comienza a ejecutar....??? o algo mas...!?!?!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=199430" width="1" height="1"&gt;</description></item><item><title>re: C#: Implementar la Interface ICloneable</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/01/23/c-implementar-la-interface-icloneable.aspx#198583</link><pubDate>Sat, 30 Jul 2011 23:29:40 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:198583</guid><dc:creator>torreja</dc:creator><description>&lt;p&gt;Muchas gracias Jesús, tu artículo me fue de mucha ayuda. Gracias por el trabajo y esfuerzo. Un abrazo.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=198583" width="1" height="1"&gt;</description></item><item><title>re: C#. Unidades de capacidad</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/07/19/c-unidades-de-capacidad.aspx#198138</link><pubDate>Thu, 21 Jul 2011 07:11:22 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:198138</guid><dc:creator>preguntoncojonero</dc:creator><description>&lt;p&gt;sseguro que en el acelerador de partículas llegan a esas capacidades :-) interesante post, salu2grz&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=198138" width="1" height="1"&gt;</description></item><item><title>re: C#. Unidades de capacidad</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/07/19/c-unidades-de-capacidad.aspx#198084</link><pubDate>Wed, 20 Jul 2011 09:40:05 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:198084</guid><dc:creator>Jesús Velasco</dc:creator><description>&lt;p&gt;Gracias, Nicolás. Se me había cambiado el 2 por el 1. Ya está arreglado.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=198084" width="1" height="1"&gt;</description></item><item><title>re: C#. Unidades de capacidad</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/07/19/c-unidades-de-capacidad.aspx#198075</link><pubDate>Wed, 20 Jul 2011 07:17:17 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:198075</guid><dc:creator>Nicolas</dc:creator><description>&lt;p&gt;En la línea 53: &lt;/p&gt;
&lt;p&gt;¿ 2 ^ 10 no es 1024 ?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=198075" width="1" height="1"&gt;</description></item><item><title>re: C#. NombrePropio</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/07/02/c-nombrepropio.aspx#197143</link><pubDate>Sun, 03 Jul 2011 20:44:41 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:197143</guid><dc:creator>Joaquin Cervantes Moreno</dc:creator><description>&lt;p&gt;Gracias Admin!&lt;/p&gt;
&lt;p&gt;Esta información es de mucha ayuda, ya que muchos usuarios no entienden la forma correcta de ingresar algunos valores&lt;/p&gt;
&lt;p&gt;SALUDOS!!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=197143" width="1" height="1"&gt;</description></item><item><title>re: Validar un número de cuenta bancaria</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/02/05/validar-un-n-250-mero-de-cuenta-bancaria.aspx#196932</link><pubDate>Thu, 30 Jun 2011 15:09:03 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:196932</guid><dc:creator>Armando</dc:creator><description>&lt;p&gt;El desarrollador en .NET lo más recomendable es utilizar una Exception para controlar los errores con la combinación del Try Cash para que el sistema no casque.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=196932" width="1" height="1"&gt;</description></item><item><title>re: Generar fechas aleatorias con C#</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/05/18/generar-fechas-aleatorias-con-c.aspx#195067</link><pubDate>Fri, 27 May 2011 12:03:07 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:195067</guid><dc:creator>CHEMA</dc:creator><description>&lt;p&gt;Sigues siendo un fenomeno de la informatica.Te dejo mi correo y hablamos. &lt;/p&gt;
&lt;p&gt;Un fuerte abrazo, &lt;/p&gt;
&lt;p&gt;Chemaveriesponougta&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=195067" width="1" height="1"&gt;</description></item><item><title>re: Generar fechas aleatorias con C#</title><link>http://geeks.ms/blogs/jvelasco/archive/2011/05/18/generar-fechas-aleatorias-con-c.aspx#194589</link><pubDate>Thu, 19 May 2011 11:32:57 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:194589</guid><dc:creator>pregunton cojonero</dc:creator><description>&lt;p&gt;bravo, muy útil si &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=194589" width="1" height="1"&gt;</description></item></channel></rss>
