Hasta fx1.1 no
:(

  _____  

De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Daniel
Calvin
Enviado el: Viernes, 24 de Agosto de 2007 09:57 a.m.
Para: [email protected]
Asunto: [puntonet] Saber si un objeto implementa una interface (Ex: OT rdp)


Una aporte mas a la confusión general....

Les cuento algo que existe en c#, no se si esta disponible en vb, el
operador as..

En C# uno podria hacer una conversion de tipo segura, evitando una exception
verificando primero con is, ejemplo: 

            IServiceProvider isp=null;
            if (this is IServiceProvider)
                ips = (IServiceProvider)this;

Una forma mas elegante, y tambien mas eficiente si miran el codigo msil
resultante, es usar el operador as, ejemplo: 

            IServiceProvider isp = this as IServiceProvider;

Esto último hace lo mismo que el ejemplo anterior, si this no implementa
IServiceProvider ips valdra null.  :))

Saben si hay equivalente en vb???, busque y no lo encontre.... 

Bueno, me parecio que valia la pena....  :))

Saludos

Daniel Calvin



El día 24/08/07, Luis Capra <  <mailto:[EMAIL PROTECTED]>
[EMAIL PROTECTED]> escribió: 

Yo para hacer eso, en C# hice un metodo:
 
        public static bool IsInterfaceImplemented(Type type, Type
interfaceType)
        {
            return type.FindInterfaces(
                       new TypeFilter(
                           delegate(Type _type, object _filter) 
                               {
                                   return (_type.Name == ((Type)
_filter).Name) &&
                                          (_type.Namespace == ((Type)
_filter).Namespace); 
                               }
                           ),
                       interfaceType
                       ).Length == 1;
        }

Peor por lo visto es mucho mas sencillo lo otro :=)

 



 
On 8/24/07, Carlos Marcelo Santos <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> > wrote: 

¡¡¡Muchas Gracias!!!

Auspiciosa manera de comenzar un viernes…

 

Carlos Marcelo Santos.

 


  _____  


From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of
[EMAIL PROTECTED]
Sent: Viernes, 24 de Agosto de 2007 02:39 a.m. 


To: [email protected]  <mailto:[email protected]> 
Subject: [puntonet] Saber si un objeto implementa una interface (Ex: OT rdp)






 

If TypeOf miControl Is ISerializable Then 

 

Saludos

Leonardo

 


  _____  


De: Carlos Marcelo Santos [mailto:[EMAIL PROTECTED] 
Enviado el: Jueves, 23 de Agosto de 2007 09:53 p.m.
Para: [email protected]  <mailto:[email protected]> 
Asunto: [puntonet] Saber si un objeto implementa una interface (Ex: OT rdp) 

 

* Replies will be sent through Spamex to [email protected] 
* For additional info click -> www.spamex.com/i/?v=13137989 

 

Hola Diego:

Gracias por prolijar el subject.

No funciona para este caso

If miControl Is ISerializable Then

Da error

Y ahora probé

If miControl = ISerializable Then

También da error

 

Gracias.

 

Carlos Marcelo Santos .

 


  _____  


From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Diego
Jancic
Sent: Jueves, 23 de Agosto de 2007 09:42 p.m.
To: [email protected]
Subject: [puntonet] Saber si un objeto implementa una interface (Ex: OT rdp)


 

Hola,

Cambie el asunto del email para que se entienda un poco mas de que estamos
hablando… 

 

Según un traductor de C# a VB.NET <http://vb.net/> , esto:

 

bool a = myControl is ISerializable;

 

se traduce a esto:

 

Dim a As Boolean = (myControl = ISerializable)

 

 

Espero que te sirva.

 

Saludos,
Diego

 

 


  _____  


From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Carlos
Marcelo Santos
Sent: Jueves, 23 de Agosto de 2007 09:34 p.m.
To: [email protected]
Subject: [puntonet] OT rdp

 

Hola Gente:

¿Cómo se pregunta en VB si un objeto implementa una interface?

Lo que en C# sería

if (myControl is ISerializable)

 

Gracias.

 

Carlos Marcelo Santos .




No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.2/967 - Release Date: 22/08/2007
06:51 p.m.



No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.2/967 - Release Date: 22/08/2007
06:51 p.m.



No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.2/967 - Release Date: 22/08/2007
06:51 p.m.



No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.2/967 - Release Date: 22/08/2007
06:51 p.m.



No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.2/967 - Release Date: 22/08/2007
06:51 p.m.



No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.2/967 - Release Date: 22/08/2007
06:51 p.m.






-- 
Daniel A. Calvin
Cooperator Team Member
http://www.cooperator.com.ar
Microsoft Certified Professional 

Responder a