Hola gente, Para aquel que le interese, encontré un lindo encare a la situación que tenía hace varios días de querer utilizar un cliente WCF como singleton, de manera de no crear a cada rato el proxy (operación que es bastante costosa).
La solución aparente (sólo resta hacerle sus buenos stress test para confirmar que sirva en producción) es por un lado manejar ClientBase de la siguiente manera: Building a reusable ClientBase proxy<http://www.acorns.com.au/2007/8/21/Building+a+reusable+ClientBase+proxy.aspx> Y por otra parte, crear un singleton wrapper que me devuelva siempre la misma instancia y en caso de ocurrir una de las excepciones que maneja el proxy del ejemplo anterior, crear y devolver una *nueva *instancia. De esta forma sólo estoy creando un nuevo proxy en aquellos casos que hay una falla, tanto sea de serialización, de timeout, de comunicación, etc. A esto también se le podría integrar un pool (WCF Client Channel Pool<http://weblogs.asp.net/pglavich/archive/2007/05/07/wcf-client-channel-pool-improved-client-performance.aspx>), algo que podría mejorar más la performance, pero por mi parte todavía no lo probé. Y si alguno, en mi misma situación, se topa en algún momento con WCF LOB Adapter, por favor sigan de largo!! ;) A menos que estén usando BizTalk. Saludos, Luis
