Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何从SQLServer文本字段转换为xml并返回_.net_Sql_Sql Server_Xml_Linq To Xml - Fatal编程技术网

.net 如何从SQLServer文本字段转换为xml并返回

.net 如何从SQLServer文本字段转换为xml并返回,.net,sql,sql-server,xml,linq-to-xml,.net,Sql,Sql Server,Xml,Linq To Xml,我们使用数据类型文本将xml保存在SQL Server数据库中,所以它是一个长字符串 我现在需要做的是将这个字符串转换为xml,然后使用它,最后将它转换回一个字符串,保存回数据库 xml: <Posts> <DialogPost> <Type></Type> <User></User> <Customer></Customer> <Date

我们使用数据类型文本将xml保存在SQL Server数据库中,所以它是一个长字符串

我现在需要做的是将这个字符串转换为xml,然后使用它,最后将它转换回一个字符串,保存回数据库

xml:

<Posts>
    <DialogPost>
      <Type></Type>
      <User></User>
      <Customer></Customer>
      <Date></Date>
      <Message></Message>
    </DialogPost>
</Posts>

它不喜欢直接从数据库中提取字符串。你会建议我如何解决这个问题?读取和写回数据库。

使用
XDocument.Parse
方法<代码>加载需要URI而不是XML

您还应该注意,您发布的XML无效。您在末尾有一个关闭
对话框
标记,但没有打开标记。下面是一个使用有效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);
string str=
@"
";
XDocument doc=XDocument.Parse(str);

作为示例和更多信息。

为什么不首先将其存储在XML字段中?我依赖于另一个已经将其保存到此文本字段的应用程序,它绝对更喜欢XML字段类型。我更正了您发布的XML。如果这不是输入错误,那么请还原我的更改,还原无效的XML。非常有用,谢谢。如果我想添加更多,我该怎么做呢?您只需在关闭
DialogPost
标记下方,但在关闭
Posts
标记之前添加另一个
DialogPost
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);