В конечном счете, нет прямой связи между SqlXml
и XmlText
(и действительно, XmlText
представляет только определенный тип узла, а не xml). Вам нужно будет спуститься до уровня string
или byte[]
и вернуться обратно (поскольку вы не используете потоковый ридер). Например:
string xml = reader.GetSqlXml(7).Value;
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
или
string xml = reader.GetSqlXml(7).Value;
XElement el = XElement.Parse(xml);
или (возможно, более эффективно) с использованием XmlReader
API:
XmlDocument doc = new XmlDocument();
using(XmlReader xr = reader.GetSqlXml(7).CreateReader()) {
doc.Load(xr);
}
и
XElement el;
using(XmlReader xr = reader.GetSqlXml(7).CreateReader()) {
el = XElement.Load(xr);
}