当使用command.ExecuteXmlReader()
访问时,XMLDATA是以二进制xml dom表示形式传输,还是以xml字符串?传输?
文档链接将是完美的。
sql server和client端涉及哪些序列化/反序列化步骤?
更新:
问题不在于如何使用net framework提供的类。
它是关于在SQL Server连接上执行Adonet命令期间数据传输的内部细节,从而在结果集中生成XMLDATA列。
答案 0 :(得分:0)
它返回一个XmlReader对象。虽然从对象获取字符串表示将是微不足道的。
http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx
这是一个很好的链接,提供有关使用该类的其他信息。
答案 1 :(得分:0)
有三个示例应用程序演示了在SQL Server Samples download at Codeplex中使用.NET中的XML数据类型。我相信你会觉得它们很有用。
安装示例后,请查看以下文件夹中的示例:C:\ Program Files \ Microsoft SQL Server \ 100 \ Samples \ Engine \ XML \ XmlManuInstructions
在代码文件的大约一半处,有一个演示如何将XML检索为XMLDocument对象。
更多信息:MSDN上的Sample XML Applications
答案 2 :(得分:0)
格式是某种内部表示,可能是树结构。以下值:
<ErrorData>
<Error>The provided value for ItemCode contains invalid characters (_).</Error>
</ErrorData>
遇到这样的电线:
00c0 b0 04 f0 09 45 00 72 00 72 00 6f 00 72 00 44 00 ....E.r.r.o.r.D.
00d0 61 00 74 00 61 00 ef 00 00 01 f8 01 f0 05 45 00 a.t.a.........E.
00e0 72 00 72 00 6f 00 72 00 ef 00 00 02 f8 02 11 40 r.r.o.r........@
00f0 54 00 68 00 65 00 20 00 70 00 72 00 6f 00 76 00 T.h.e. .p.r.o.v.
0100 69 00 64 00 65 00 64 00 20 00 76 00 61 00 6c 00 i.d.e.d. .v.a.l.
0110 75 00 65 00 20 00 66 00 6f 00 72 00 20 00 49 00 u.e. .f.o.r. .I.
0120 74 00 65 00 6d 00 43 00 6f 00 64 00 65 00 20 00 t.e.m.C.o.d.e. .
0130 63 00 6f 00 6e 00 74 00 61 00 69 00 6e 00 73 00 c.o.n.t.a.i.n.s.
0140 20 00 69 00 6e 00 76 00 61 00 6c 00 69 00 64 00 .i.n.v.a.l.i.d.
0150 20 00 63 00 68 00 61 00 72 00 61 00 63 00 74 00 .c.h.a.r.a.c.t.
0160 65 00 72 00 73 00 20 00 28 00 5f 00 29 00 2e 00 e.r.s. .(._.)...
0170 f7 f7 00 00 00 00 d1 0d 27 00 00 02 00 00 00 01 ........'.......
注意:
更新:嘿,很酷,找到了。我忘了格式叫做TDS:http://www.freetds.org/tds.html#login7。看起来您可以指定是否以二进制格式返回Xml,具体取决于它是否传递给ADO。
二进制Xml的文档:http://msdn.microsoft.com/en-us/library/ee208875.aspx