我正在使用泛型方法來反序列化xml文檔取決於包含。它試圖對所有可能的情況進行反序列化。命名空間名稱'P'無法找到(您是否缺少使用指令或程序集引用?)
這裏我的代碼片段:
private static Dictionary<Type, byte> getMessageDictionary() {
Dictionary<Type, byte> typesIO = new Dictionary<Type, byte>();
typesIO.Add(typeof (Type1), 1);
typesIO.Add(typeof (Type2), 11);
typesIO.Add(typeof (Type3), 12);
return typesIO;
}
public static object GetContainer(XmlDocument xd) {
foreach(KeyValuePair<Type, byte> item in getMessageDictionary()) {
try {
Type p = item.Key;
var z = Utils.XmlDeserialize<p> (xd.OuterXml);
return z;
} catch {
continue;
}
}
return null;
}
但是編譯器說的類型或命名空間名稱p
找不到。我錯過using
指令或程序集引用嗎?什麼地方出了錯?
在一個類型的預期背景下,不能使用類型Type'的'的對象。在編譯時必須知道泛型類/方法的類型參數。 – knittl