当我使用FOR XML语句查询SQL Server时,我得到了预期的结果,格式如下......没有适当的缩进---
<ROOT><SUBROOT><A>1111</A></SUBROOT><SUBROOT><B>2222</B></SUBROOT><ROOT>
Run Code Online (Sandbox Code Playgroud)
如何格式化此结果或查询它以获得以下格式?
<ROOT>
<SUBROOT>
<A>1111</A>
</SUBROOT>
<SUBROOT>
<B>2222</B>
</SUBROOT>
<ROOT>
Run Code Online (Sandbox Code Playgroud) 我有一些对象让我们说两个,A和B.这些对象来自同一个类.我需要使用JAXB封送这些对象,输出XML应采用以下形式:
<Root>
<A>
<ID> an id </ID>
</A>
<B>
<ID> an id </ID>
</B>
</Root>
<!-- Then all A and B attributes must be listed !-->
<A>
<ID> an id </ID>
<attribute1> value </attribute1>
<attribute2> value </attribute2>
</A>
<B>
<ID> an id </ID>
<attribute1> value </attribute1>
<attribute2> value </attribute2>
</B>
Run Code Online (Sandbox Code Playgroud)
如何在JAXB中生成此格式?任何帮助表示赞赏.
更新: 更具体地说,假设我们有这样的Human类:
@XmlRootElement
public class Human {
private String name;
private int age;
private Integer nationalID;
public String getName() {
return name;
}
public void setName(String name) {
this.name …Run Code Online (Sandbox Code Playgroud) 我一直试图找到一个可以在.NET应用程序中使用的免费/开源XML-FO处理器,但我找不到运气.有谁知道我可以使用的一个?
提前致谢.
<?xml version=\"1.0\" encoding=\"UTF-8\" ?>
<response uri=\"/crm/private/xml/Potentials/updateRecords\">
<result>
<message>***TEST***Record(s) updated successfully</message>
<recorddetail>
<FL val=\"Id\">414100000000000000</FL>
<FL val=\"Created Time\">2012-03-30 16:54:03</FL>
<FL val=\"Modified Time\">2012-04-11 16:53:48</FL>
<FL val=\"Created By\"><![CDATA[Bayer]]></FL>
<FL val=\"Modified By\"><![CDATA[Bayer]]></FL>
</recorddetail>
</result>
</response>
Run Code Online (Sandbox Code Playgroud)
这是Zoho的一般性回复,说明我的记录已成功更新(减去测试部分和伪造的ZohoID.)我一直试图让我的C#程序能够制作那种风格的xml文档,因为当我发布的内容时zoho它的风格实际上非常相似.但我只是无法弄清楚如何使它工作这是他们的网站上的一个例子.
<Leads>
<row no="1">
<FL val="Lead Source">Web Download</FL>
<FL val="First Name">contacto 1</FL>
<FL val="Last Name">apellido</FL>
<FL val="Email">testing@testing.com</FL>
<FL val="Title">Manager</FL>
<FL val="Phone">1234567890</FL>
<FL val="Home Phone">0987654321</FL>
<FL val="Other Phone">1212211212</FL>
<FL val="Fax">02927272626</FL>
<FL val="Mobile">292827622</FL>
</row>
</Leads>
Run Code Online (Sandbox Code Playgroud)
我试图用C#中的单元测试来复制它,但是它给了我各种各样的错误..我已经失去了我尝试过的所有不同的方式,但我会发布我现在拥有的内容和错误它扔了.
[Test]
public void TestMethod()
{
XmlDocument doc = new XmlDocument();
XmlDeclaration declare = doc.CreateXmlDeclaration("1.0", null, null); …Run Code Online (Sandbox Code Playgroud)