Use XDocument as the source for XmlSerializer.Deserialize?
.net, linq-to-xml
Solution
You can use `XDocument.CreateReader()` to create an `XmlReader` that reads the contents of the `XDocument`.
Equivalently, the following will work too.
XmlReader GetReader(XDocument doc)
{
return doc.Root.CreateReader();
}
Problem
I would like to invoke `XmlSerializer.Deserialize` passing it an `XDocument`. It can take a `Stream`, an `XmlReader` or a `TextReader`. Can I generate one of the above from `XDocument` without actually dumping the `XDocument` into some intermediate store, such as a `MemoryStream`? It seems that what I'm after is an implementation of `XmlReader` that works with an `XDocument`. I can't find one though.