PDA

Ver la Versión Completa : checkear si es colección


JaviMarciano
11-09-2014, 16:13:18
Cómo chequear si un objeto es algún tipo colección?

roman
11-09-2014, 16:21:14
if Objeto is TCollection then
ShowMessage('Es colección');


// Saludos

JaviMarciano
11-09-2014, 17:22:53
if Objeto is TCollection then
ShowMessage('Es colección');


// Saludos

gracias por tu Respuesta, pero lo que intento hacer es lo siguiente:
tengo una clase por ejemplo curso, que tiene un campo del tipo


TPersona = class
private
FNombre: string;
FApellido: string;
published
property Apellido: string read FApellido write FApellido;
property Nombre: string read FNombre write FNombre;
end;

TCurso = class
private
FPersonas: TList '< TPersonas>';
public
constructor Create;
destructor Destroy;
published
property Personas: TList<TPersonas> read FPersonas write FPersonas;
end;



yo necesito hacer un serializador y tengo que chequear si las propiedades son de algún tipo de System.Generics.Collections intenté hacer lo que me dijiste pero me da el siguiente error de compilación:

Incompatible types: 'System.Generics.Collections.TList<unit1.Personas>' and 'TCollection'

roman
11-09-2014, 17:30:10
Entonces prueba con:


if Objeto es TList then


// Saludos

JaviMarciano
11-09-2014, 17:37:32
Entonces prueba con:


if Objeto es TList then


// Saludos

:(

Incompatible types: 'System.Generics.Collections.TList<unit1.Personas>' and 'TList'