<?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 armario "ropero" - Todos los comentarios</title><link>http://geeks.ms/blogs/mropero/default.aspx</link><description>Divagaciones de un armario cualquiera</description><dc:language /><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>re: Ejecutar un servicio de Windows en 32-bit en un Windows de 64-bit</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/17/ejecutar-un-servicio-de-windows-en-32-bit-en-un-windows-de-64-bit.aspx#199683</link><pubDate>Thu, 18 Aug 2011 20:55:27 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:199683</guid><dc:creator>Julio</dc:creator><description>&lt;p&gt;Excelente aporte. Muchas gracias&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=199683" width="1" height="1"&gt;</description></item><item><title>re: [WCF] Usar ClientMessageInspector para añadir información a las soapHeaders</title><link>http://geeks.ms/blogs/mropero/archive/2009/06/14/wcf-a-241-adir-informaci-243-n-en-las-soapheaders.aspx#188760</link><pubDate>Thu, 10 Feb 2011 11:48:07 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:188760</guid><dc:creator>pregunton cojonero</dc:creator><description>&lt;p&gt;Gracias señor.&lt;/p&gt;
&lt;p&gt;Sugerencia de post de [WCF] Usar ClientMessageInspector para Trazar con Trace.WriteLine a fichero de texto por ejemplo.&lt;/p&gt;
&lt;p&gt;salu2grz&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=188760" width="1" height="1"&gt;</description></item><item><title>re: Ejecutar un servicio de Windows en 32-bit en un Windows de 64-bit</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/17/ejecutar-un-servicio-de-windows-en-32-bit-en-un-windows-de-64-bit.aspx#166495</link><pubDate>Tue, 02 Feb 2010 18:42:31 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:166495</guid><dc:creator>Miguel Ángel</dc:creator><description>&lt;p&gt;Acabas de salvarme la vida. Gracias!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=166495" width="1" height="1"&gt;</description></item><item><title>re: System.Transactions y concurrencia</title><link>http://geeks.ms/blogs/mropero/archive/2009/11/03/system-transactions-y-concurrencia.aspx#164497</link><pubDate>Thu, 07 Jan 2010 07:57:21 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:164497</guid><dc:creator>preguntoncojonero</dc:creator><description>&lt;p&gt;Señor, gran artículo.&lt;/p&gt;
&lt;p&gt;Y una duda, por curiosidad, en C# cuál sería la mejor forma de hacer &amp;quot;una transacción&amp;quot; para actualizar una base de datos y modificar (o mover, copiar, crear) un fichero ??&lt;/p&gt;
&lt;p&gt;Es decir, que las operaciones de actualizar base de datos y acceso a disco fuesen ´como una sóla operación atómica. Nunca vi ningún ejemplo sobre este tema.&lt;/p&gt;
&lt;p&gt;Saludos y gracias.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=164497" width="1" height="1"&gt;</description></item><item><title>re: Ejecutar un servicio de Windows en 32-bit en un Windows de 64-bit</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/17/ejecutar-un-servicio-de-windows-en-32-bit-en-un-windows-de-64-bit.aspx#161482</link><pubDate>Sun, 29 Nov 2009 00:12:07 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:161482</guid><dc:creator>mario </dc:creator><description>&lt;p&gt;buerno muy bueno&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=161482" width="1" height="1"&gt;</description></item><item><title>re: Mutex vs Semaphore</title><link>http://geeks.ms/blogs/mropero/archive/2009/11/24/mutex-vs-semaphore.aspx#161215</link><pubDate>Wed, 25 Nov 2009 08:01:27 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:161215</guid><dc:creator>preguntoncojonero</dc:creator><description>&lt;p&gt;Algún ejemplo de código ?? grz&amp;amp;salu2&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=161215" width="1" height="1"&gt;</description></item><item><title>re: System.Transactions y concurrencia</title><link>http://geeks.ms/blogs/mropero/archive/2009/11/03/system-transactions-y-concurrencia.aspx#160226</link><pubDate>Tue, 10 Nov 2009 09:55:38 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:160226</guid><dc:creator>preguntoncojonero</dc:creator><description>&lt;p&gt;gracias, siga así !!!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=160226" width="1" height="1"&gt;</description></item><item><title>re: [WCF] DataContractSerializer y la propiedad IsReference. .NET 3.5 SP1</title><link>http://geeks.ms/blogs/mropero/archive/2009/09/29/wcf-datacontractserializer-y-la-propiedad-isreference-net-3-5-sp1.aspx#157624</link><pubDate>Thu, 08 Oct 2009 10:30:05 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:157624</guid><dc:creator>Mario</dc:creator><description>&lt;p&gt;Totalmente de acuerdo Unai creo que el ejemplo que puse abarca mucho más de lo que intentaba decir y puede llevar a engaño, de hecho a mí me llevó.&lt;/p&gt;
&lt;p&gt;Seguiremos con ello... :)&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=157624" width="1" height="1"&gt;</description></item><item><title>re: [WCF] DataContractSerializer y la propiedad IsReference. .NET 3.5 SP1</title><link>http://geeks.ms/blogs/mropero/archive/2009/09/29/wcf-datacontractserializer-y-la-propiedad-isreference-net-3-5-sp1.aspx#157432</link><pubDate>Mon, 05 Oct 2009 17:46:49 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:157432</guid><dc:creator>Unai</dc:creator><description>&lt;p&gt;Bueno, ahora que ya te has puesto con el tema de IsReference queda pensar más en tu razonamiento. Hablas en este y en tu anterior post, no lo leía fondo, solamente tu problemática, sobre tipos por referencia y valor, lo cual no me parece apropiado cuando estás hablando de serialización. Ten en cuenta que esto nada tiene que ver con la organización de los mismos en la memoria, como asignaciones directas o referencias al Heap, IsReference y preserve object reference hablan solamente de la serialziación y de la compartición de contratos, incluso entre diferentes lenguajes, lo que podría complicar más tu razonamiento. En un de mis post, y no es por auto-referenciarme explico, creo que de una manera correcta, todo este punto. Al final conservar estas referencas al deserialzar no es más que como organizar la información y como podemos informar al serializador de turno de posibles referencias, como con la utilización de los atributos XML xsd:Id y xsd:ref...&lt;/p&gt;
&lt;p&gt;te pego en enlace por si le quieres echar un vistazo&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://geeks.ms/blogs/unai/archive/2008/04/29/ef-y-el-transporte-de-grafos-primeros-pasos.aspx"&gt;geeks.ms/.../ef-y-el-transporte-de-grafos-primeros-pasos.aspx&lt;/a&gt;&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=157432" width="1" height="1"&gt;</description></item><item><title>re: [WCF] Vuelta a la realidad,… y jugando con el DataContractSerializer</title><link>http://geeks.ms/blogs/mropero/archive/2009/09/21/wcf-vuelta-a-la-realidad-y-jugando-con-el-datacontractserializer.aspx#156881</link><pubDate>Mon, 28 Sep 2009 08:14:09 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:156881</guid><dc:creator>Mario</dc:creator><description>&lt;p&gt;Buenas Unai, la verdad es que no investigué sobre los DataContract con el nuevo SP1, imagino que lo introducirán como mejoras para tú querido EF :-)&lt;/p&gt;
&lt;p&gt;Un saludín.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=156881" width="1" height="1"&gt;</description></item><item><title>re: [WCF] Vuelta a la realidad,… y jugando con el DataContractSerializer</title><link>http://geeks.ms/blogs/mropero/archive/2009/09/21/wcf-vuelta-a-la-realidad-y-jugando-con-el-datacontractserializer.aspx#156402</link><pubDate>Tue, 22 Sep 2009 16:58:16 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:156402</guid><dc:creator>Unai</dc:creator><description>&lt;p&gt;Joder mario, esta bien el ejemplo pero estaría mejor no reinventar la rueda :-). Para eso los DataContract ya tiene una propiedad llamada IsReference que si la pones a true ya tienes el parametro preserveObjectReferences a true. Claro está esto solamente en WCF 3.5 SP1 .. ¿¿averiguas el principal motivo para hacerlo ?? Es decir, para dar soporte a que lo han introducido??&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=156402" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153257</link><pubDate>Wed, 29 Jul 2009 12:08:34 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153257</guid><dc:creator>Miguel Sierra</dc:creator><description>&lt;p&gt;Yo estoy de acuerdo, creo que que antes de gestionar una excepción hay que gestionar un proceso de validación.&lt;/p&gt;
&lt;p&gt;Pero entiendo que cuando te encuentras en el mantenimiento de un sistema con try catch {} vacios se te ponen los pelos de punta... &lt;/p&gt;
&lt;p&gt;Os cuento la solución por la que optamos:&lt;/p&gt;
&lt;p&gt;En CIC disponíamos de un sistema de logueo de Excepciones basado en la Enterprise Library y el logging applicaction block, pero se decidió implementar uno propio que integrase mas funcionalidad y no dependiese de las dlls de la EL.&lt;/p&gt;
&lt;p&gt;Se diseñó uno con una serie de caracteríticas:&lt;/p&gt;
&lt;p&gt;- Mas información de detalle: stack trace, procesos activos, prioridad, memoria ocupada, equipo, usuario,... incluso bajo petición un memory dump.&lt;/p&gt;
&lt;p&gt;- Captura de pantalla del momento previo.&lt;/p&gt;
&lt;p&gt;- Notificaciones via mail, evento log de windows, ficheros de texto... incluso auto inserción en nuestro bug tracker.&lt;/p&gt;
&lt;p&gt;- Un interfaz chula que informe del error transmitiendo calma y serenidad al usuario.&lt;/p&gt;
&lt;p&gt;El caso es que una vez que preparamos esa DLL se vio que la potencia era muy grande y se podía utilizar en otros desarrollos...&lt;/p&gt;
&lt;p&gt;Y vino uno con un montón de Catch {}, no penseis que era uno de un supermercado, era un módulo de gestión de un reactor nuclear! (no es broma)&lt;/p&gt;
&lt;p&gt;El caso es que con un simple find and replace se cambiaron los catch vacios por una correcta gestión de la excepción. (tiempo dedicado 6 minutos)&lt;/p&gt;
&lt;p&gt;Obviamente después hemos tenido que revisar cada uno con detenimiento, pero la información que nos ha devuelto el sistema ha sido crucial para dar con los errores vacios.&lt;/p&gt;
&lt;p&gt;Si alguien quiere esa DLL de gestión de excepciones que me la pida.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=153257" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153244</link><pubDate>Wed, 29 Jul 2009 06:47:23 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153244</guid><dc:creator>Jordi</dc:creator><description>&lt;p&gt;@Luis: Mirando CodeContracts he visto que aunque da una herramientas muy potentes para la validación de datos el sistema que utiliza para la comunicación de los incumplimientos en el lanzamiento de un ContractExecption. ¿Sabes si tiene algún otro método de comunicación que no sea lanzando excepciones?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=153244" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153240</link><pubDate>Wed, 29 Jul 2009 06:06:09 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153240</guid><dc:creator>Luis Ruiz Pavón</dc:creator><description>&lt;p&gt;Para todo esto están disponibles los CodeContracts una alternativa muy pero que muy interesante y a tener mucho en cuenta ;)&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=153240" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153237</link><pubDate>Wed, 29 Jul 2009 04:52:02 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153237</guid><dc:creator>Mario</dc:creator><description>&lt;p&gt;@Jesús: A ver, lo que yo no veo es que tú canal de información a las distintas capas de aplicación para una validación de negocio sea a través de una excepción. Por poner un ejemplo, si un campo de una entidad digamos Cliente viene a null y tú lo necesitas, el hacer un throw de una exception para informar que el cliente está a null... pues no lo veo.&lt;/p&gt;
&lt;p&gt;Parafraseando a un crack de por aquí (Luis Guerrero), las excepciones son algo excepcional y no por validaciones de código si no por algo que tú no puedes controlar.&lt;/p&gt;
&lt;p&gt;Alternativas, por desgracia estoy buscando alguna que me convenza, como ya he dicho en el post yo soy/era el típico bruto de try...catch y ale... ya se verá. Estoy buscando algo... si consigo dar con ello intentaré haceroslo llegar...&lt;/p&gt;
&lt;p&gt;Pero para ponerte un caso, en mi cliente actual, se lanza excepciones para informar sobre validaciones, típico &amp;quot;No se encuentra ese cliente&amp;quot; y cosas similares, y a la hora de utilizar windbg es horrible el ruido que meten esas validaciones...&lt;/p&gt;
&lt;p&gt;Pufffffff rollazo que he soltado...&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=153237" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153207</link><pubDate>Tue, 28 Jul 2009 17:37:28 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153207</guid><dc:creator>Jesús Bosch</dc:creator><description>&lt;p&gt;Los que comentáis que no validáis con excepciones... comentar que bueno, antes lo hacía sin excepciones, pero creo que al final era más propenso a errores. Una excepción mal gestionada no se quedará ahí, como un cacth sin código, te petará en la cara :P&lt;/p&gt;
&lt;p&gt;Por otro lado, qué alternativas habría? Tengo curiosidad por el tema.&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=153207" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153206</link><pubDate>Tue, 28 Jul 2009 17:28:13 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153206</guid><dc:creator>Mario Ropero</dc:creator><description>&lt;p&gt;Para Luis: Gracias... joe que zanguango soy :). Ya decía yo que no podía ser más eficiente una cosa que la otra... no no no.&lt;/p&gt;
&lt;p&gt;Por cierto estoy totalmente de acuerdo con Bruno, las excepciones no son para validar, ni para mandar mensajitos al cliente. &lt;/p&gt;
&lt;p&gt;Además como ya ha comprobado nuestro amigo Luis, es mucho más eficiente comprobar que lanzar una excepción.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=153206" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153197</link><pubDate>Tue, 28 Jul 2009 14:13:56 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153197</guid><dc:creator>Jordi</dc:creator><description>&lt;p&gt;Estoy con Luis la diferencia de tiempo es causada por la falta de un sw.Reset(); antes del segundo sw.Start() .. me suena el olvido, a mi me pasa también!&lt;/p&gt;
&lt;p&gt;De todas formas estoy con Bruno y creo que no debería ser el objetivo de las excepciones validarnos los input de un método.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=153197" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153194</link><pubDate>Tue, 28 Jul 2009 13:04:43 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153194</guid><dc:creator>Luis Ruiz Pavón</dc:creator><description>&lt;p&gt;Revisando tú código rapidamente, creo que el problema puede estar entre el stop y el start, que lo que estas haciendo es pararlo y volverlo a arrancar, pero el tiempo que muestras es entre que paras y se ejecuta el HasValue. Con el siguiente cambio se nota el rendimiento:&lt;/p&gt;
&lt;p&gt;sw.Stop();&lt;/p&gt;
&lt;p&gt;sw = new System.Diagnostics.Stopwatch();&lt;/p&gt;
&lt;p&gt;sw.Start();&lt;/p&gt;
&lt;p&gt;Tiempo total Exception 0,0572096&lt;/p&gt;
&lt;p&gt;Tiempo total HasValue 0,000355&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=153194" width="1" height="1"&gt;</description></item><item><title>re: AYUDA : Validaciones vs Excepciones</title><link>http://geeks.ms/blogs/mropero/archive/2009/07/28/ayuda-validaciones-vs-excepciones.aspx#153188</link><pubDate>Tue, 28 Jul 2009 12:23:15 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:153188</guid><dc:creator>Oskar Alvarez</dc:creator><description>&lt;p&gt;Estoy de acuerdo con Bruno, las excepciones son para errores no contempladas en codigo y una validación la estas realizando por codigo&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=153188" width="1" height="1"&gt;</description></item></channel></rss>
