Cha*_*ani 3 c# xml types sql-server-2008
我正在读取SQL Server数据库中以Xml格式存储的一些数据,我正在使用C#来读取这些数据.我们在System.Xml中有一个名为XmlText的类型,但它不允许我将数据从SqlXml转换并存储到XmlText.我需要将数据库中的数据以XML格式复制到某个对象,然后序列化该对象.然后我需要通过网络发送一组对象.这里有什么解决方案?
最终,SqlXml和之间没有直接的联系XmlText(实际上,XmlText只代表一种特定类型的节点,而不是xml).您将不得不再次进入string或byte[]升级并重新备份(因为您没有使用流式读取器).例如:
string xml = reader.GetSqlXml(7).Value;
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
Run Code Online (Sandbox Code Playgroud)
要么:
string xml = reader.GetSqlXml(7).Value;
XElement el = XElement.Parse(xml);
Run Code Online (Sandbox Code Playgroud)
或者(可能更有效)使用XmlReaderAPI:
XmlDocument doc = new XmlDocument();
using(XmlReader xr = reader.GetSqlXml(7).CreateReader()) {
doc.Load(xr);
}
Run Code Online (Sandbox Code Playgroud)
和
XElement el;
using(XmlReader xr = reader.GetSqlXml(7).CreateReader()) {
el = XElement.Load(xr);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4349 次 |
| 最近记录: |