using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.Serialization; using System.IO; using System.Reflection; using System.Collections; namespace AgentServiceDefaultModule { public class ASBinder : SerializationBinder { public override Type BindToType(string assemblyName, string typeName) { Type tyType = null; string sShortAssemblyName = assemblyName.Split(',')[0]; string[] files = Directory.GetFiles(Path.GetDirectoryName(new Uri(Assembly.GetExecutingAssembly().CodeBase).LocalPath), "*.dll"); ArrayList ayAssemblies = new ArrayList(); foreach(string s in files) { ayAssemblies.Add(Assembly.LoadFrom(s)); } foreach(Assembly ayAssembly in ayAssemblies) { if(sShortAssemblyName == ayAssembly.FullName.Split(',')[0]) { tyType = ayAssembly.GetType(typeName); break; } } return tyType; } } }