2011-11-13 141 views
0

反序列化我使用的工作方法:對象反序列化

public static bool InvokeDeserializeMethod<T>(ref T o, string serializedObject) 
     { 
      Type[] typesParameters = new Type[]{typeof(string)}; 
      MethodInfo methodInfo = typeof(o).GetMethod("Deserialize",typesParameters); 
      object[] deserializeMethodParameters = new string [] {serializedObject}; 
      if (methodInfo != null) 
      { 
       try 
       { 
        o = (T)methodInfo.Invoke(o, deserializeMethodParameters); 
        return true; 
       } 
       catch 
       { 
        return false; 
       } 
      } 
      return false; 
     } 

現在我正在複製,粘貼功能,我需要反序列化一些序列化對象(串) 我不能使用這種方法,因爲我不想一些現有的對象發送裁判,我要創建新的對象 這將是最好的,如果我有這樣的方法:

public static T InvokeDeserializeMethod<T>(string serializedObject) 

有什麼辦法如何實現它,返回類型T的對象,而不必現有的對象,我會nd方法? (我將使用此方法的每個對象都包含序列化和反序列化方法) 謝謝!

回答