2009-07-15 57 views
1

我有以下方法動態類型轉換

public static void SerializeToXMLFile(Object obj,Type type, string fileName) 
{ 
    XmlSerializerNamespaces ns = new XmlSerializerNamespaces(); 

    ns.Add("", ""); 

    XmlSerializer serializer = new XmlSerializer(type); 
    TextWriter tw = new StreamWriter(fileName); 

    serializer.Serialize(tw, obj, ns); 
    tw.Close(); 
} 

的問題是在代碼行物鏡將被序列化爲一個對象,該通知。

serializer.Serialize(tw,obj,ns);

我寧願是,它是作爲serlized及其相關類型例如:

serializer.Serialize(TW,(型)目標文件,NS);

這是如何完成的?從動態變量中獲取類型轉換?

回答

2

不,它會被序列化爲適當的類型。

Serialize方法具有object的參數類型,所以即使你可以使這一投,那就沒有任何好處。這不像是可以使用編譯時類型的通用方法。

如果您認爲相關數據未被保留,請發佈一個簡短但完整的示例來展示此信息。它應該工作正常。

+0

真是一個很好的答案......我得告訴你,因爲我在截止日期之前我真的在接受快速回應......謝謝! – 2009-07-15 10:10:51