Silverlight에서 객체를 직렬화 및 비 직렬화하려고하지만 작동하지 않는 것처럼 보입니다. 일련 화는 잘 작동하지만 내 rootObject가 예상치 못한 것에 대해 불평합니다. XML을 생성 한 Silverlight이기 때문에 이해가 가지 않습니다.직렬화 된 데이터의 직렬화가 실패합니다. 이유는 무엇입니까?
btw; 나는 그것이 생산하고 역 직렬화 할 때,
<?xml version="1.0" encoding="utf-8"?>
<DataStorage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<type>default</type>
<children />
</DataStorage>
을하지만 : Silverlight에서 직렬화 할 때
[XmlRoot("DataStorage")] // has no effect
public class DataStorage
{
public string type { get; set; }
public string imgUrl { get; set; }
public List<AbstractionObject> children { get; set; }
public DataStorage()
{
type = "default";
children = new List<AbstractionObject>();
}
}
그것이 생산 : 난 아직도 내가처럼 보이는 클래스가 C#
에 새로운 해요 :
사용자 코드에서 System.InvalidOperationException 처리되지 않았습니다. 메시지 = XML 문서 (2, 2)에 오류가 있습니다.
InnerException : System.InvalidOperationException 메시지 = <DataStorage xmlns=''
>이 (가) 필요하지 않습니다.
// create the xmlSerializer for DataObject
XmlSerializer xmlSerializer = new XmlSerializer(typeof(DataObject));
// Open the file again for reading.
StreamReader fileStream = new StreamReader(isoStore.OpenFile("IsoStoreFile.xml", FileMode.Open));
XmlReader xmlReader = XmlReader.Create(fileStream);
DataObject deserializedObject = (DataObject)xmlSerializer.Deserialize(xmlReader);
fileStream.Close();
Debug.WriteLine(deserializedObject);
어떤 생각을 다음과 같이
내 직렬화 코드는?