- 886 名前:デフォルトの名無しさん (ワッチョイ 3b90-Mt2S) mailto:sage [2017/03/05(日) 18:00:28.29 ID:NskbqDfx0.net]
- 既存のList<T>を継承してXmlシリアライズ・デシリアライズ機能をつけたものを使っていたのですが
拡張メソッドで継承することなく機能をつけようとしてなぜかInvalidOperationExceptionが投げられるようになりました どうしたことかもともと継承していたやつまでInvalidOperationExceptionを吐くようになってしまいました InnerExceptionでは「<elem xmlns=''> は指定できません。」と出ます、自作ではなくC#のXMLシリアライザを使用して吐き出したものです どなたか解決方法教えてください public class XmlData<Type> { public Type[] data; } public static void LoadXml<Type>(this List<Type> list, string path) { list.Clear(); XmlData<Type> xmldata = null; XmlDocument xdoc = new System.Xml.XmlDocument(); XmlSerializer xml = new System.Xml.Serialization.XmlSerializer(typeof(XmlData<Type>)); xdoc.PreserveWhitespace = true; xdoc.Load(path); XmlNodeReader xnr = new System.Xml.XmlNodeReader(xdoc.DocumentElement); xmldata = (XmlData<Type>)xml.Deserialize(xnr); for (int i = 0; i < xmldata.data.Length; i++) list.Add(xmldata.data[i]); }
|

|