Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static byte[] BinarySerialize(object unserialized)
- {
- try
- {
- AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(CurrentDomain_AssemblyResolve);
- using (MemoryStream ms = new MemoryStream())
- {
- BinaryFormatter bf = new BinaryFormatter();
- bf.Serialize(ms, unserialized);
- return ms.ToArray();
- }
- }
- finally
- {
- AppDomain.CurrentDomain.AssemblyResolve -= new ResolveEventHandler(CurrentDomain_AssemblyResolve);
- }
- }
- public static object BinaryDeserialize(byte[] serialized)
- {
- try
- {
- AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(CurrentDomain_AssemblyResolve);
- using (MemoryStream memStream = new MemoryStream(serialized))
- {
- BinaryFormatter binForm = new BinaryFormatter();
- return binForm.Deserialize(memStream);
- }
- }
- finally
- {
- AppDomain.CurrentDomain.AssemblyResolve -= new ResolveEventHandler(CurrentDomain_AssemblyResolve);
- }
- }
- static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
- {
- Assembly found = null;
- foreach (Assembly a in AppDomain.CurrentDomain.GetAssemblies())
- {
- if (a.FullName == args.Name)
- {
- found = a;
- break;
- }
- }
- return found;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement