Hola, quizas te sirva usar una clase genérica, te paso el código , está un poco 
de memoria...

para lograr que en tiempo de ejecución sepa instanciar un objeto 
Buscador<Cliente>, podrias meterlo en una factory o algo por reflection.. nose, 
es una idea.

public class Buscador<T> where T : IBuscable<T>
{
        public T buscar(T objeto, params String[] parametros)
        {
                    objeto.Buscar(parametros)
        }
}

public interface IBuscable
{
    Buscar(params String[]parametros)
}

public class Cliente:IBuscable...
etc...


Saludos

Sebastián



----- Mensaje original ----
De: Ghiggeri Sistemas <[EMAIL PROTECTED]>
Para: [email protected]
Enviado: jueves 29 de mayo de 2008, 8:45:13
Asunto: [puntonet] Buscador Generico para cualquier entidad

Hola a todos, ando buscando urgentemente un "buscador" (valga la 
redundancia).
El tema es asi: estoy desarrollando un sistema en 3 capas, en donde 
trabajo con datasets.
Necesito una clase genérica que pertenezca a la capa de negocio, que 
reciba como argumento cualquier objeto que necesite buscar, en donde 
cada objeto sabe como buscarse a si mismo. El problema se presenta en 
como hacer que una clase "Buscador", dependiendo del párametro que 
reciba, se instancie de una u otra manera, para buscarse a sí misma. 
Tiene algo que ver con "Polimorfismo", y no utilizando un case para hacerlo.

Por ejemplo: tenemos la clase "Cliente" con todos sus atributos y sus 
métodos, en el cual tenemos un método que es "Buscar()", el cual sirve 
para buscarse a sí mismo dependiendo del parámetro que le pasemos. De la 
misma manera tenemos las clases "Personal" y "Empresa".
Por otro lado tenemos la clase "Buscar", la cual se debe instanciar como 
un "Cliente", o "Personal", o "Empresa", dependiendo de un parámetro que 
se recibe desde la capa de aplicación para hacer uso de su método "Buscar()"

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis! 
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

Responder a