Mostrando las entradas con la etiqueta Objects. Mostrar todas las entradas

Utilizando generics para hacer un DeepCopy

Para hacer una copia de un objeto y tengamos dos objetos independientes, se requiere un DeepCopy:
public static class DeepCopier
    {
        /// Se usa un tipo generic para poder copiar cualquier objeto
        public static T Copy(T pItem)        {
            BinaryFormatter vFormatter = new BinaryFormatter();
            MemoryStream vStream = new MemoryStream();
            vFormatter.Serialize(vStream, pItem);
            vStream.Seek(0, SeekOrigin.Begin);
            T vResult = (T)vFormatter.Deserialize(vStream);
            vStream.Close();
            return vResult;
        }
    }

Para utilizarlo:

 /// Copiamos el objeto por si se va a cancelar
cGrid vObjCancel = DeepCopier.Copy(ConfigReporto);
miércoles, junio 01, 2011
Posted by Carlos

Populares!

Labels

- Copyright © - Oubliette - -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -