我们将xml保存在具有数据类型文本的SQL Server数据库中,因此它是一个长字符串。
我现在需要做的是将此字符串转换为xml,然后使用它并最终将其转换回字符串以保存回数据库。
xml:
<Posts>
<DialogPost>
<Type></Type>
<User></User>
<Customer></Customer>
<Date></Date>
<Message></Message>
</DialogPost>
</Posts>
我已经开始使用Linq来使用xml了,它看起来很棒,但是我遇到了问题让它起作用。
XDocument dialogXML = XDocument.Load("trying to load the xml string right in");
它不喜欢直接来自db的字符串。你会如何推荐我解决这个问题?读取和写回db。
答案 0 :(得分:2)
使用XDocument.Parse
方法。 Load
期望URI不是XML。
您还应注意,您发布的XML无效。您在结尾处有一个结束Dialog
标记但没有开始标记。这是一个可以使用有效XML的示例。
string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Posts>
<DialogPost>
<Type></Type>
<User></User>
<Customer></Customer>
<Date></Date>
<Message></Message>
</DialogPost>
</Posts>";
XDocument doc = XDocument.Parse(str);
Take a look here获取示例和更多信息。