//http://tinyerp.codeplex.com/
//GNU Library General Public License (LGPL)
//-----------------------------------------------------------------------
//
// Copyright (c) Pyramid Consulting. All rights reserved.
//
//-----------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Text;
namespace Bamboo.Core.Common
{
public class SysUtil
{
///
/// copy a object by content,not by reference
///
/// type of object
/// source objected to be cloned
/// the object that cloned from the source object
public static T SerializeClone(T srcObject)
{
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter bfFormatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
System.IO.MemoryStream msStream = new System.IO.MemoryStream();
T result = default(T);
try
{
bfFormatter.Serialize(msStream, srcObject);
msStream.Seek(0, System.IO.SeekOrigin.Begin);
result=(T)bfFormatter.Deserialize(msStream);
}
finally
{
if (msStream != null) msStream.Close();
}
return result;
}
}
}