0

我在 C# 中使用 XDocument 生成 XML。一切正常,除了我总是得到自动生成的字符串

XDocument doc = new XDocument(
                new XDeclaration("1.0", "UTF-8", "yes"),
                new XElement(aw+"ProviderUpdate",
                       //... more more here

                    )
                );
return doc.ToString();

它总是返回如下内容:如何删除?

<string xmlns="urn:Microsoft.Search.Registration.Response">
<ProviderUpdate xmlns="urn:Microsoft.Search.Registration.Response">
...
</ProviderUpdate>
</string>

我希望是这样的:

<?xml version="1.0" encoding="utf-8"?>
<ProviderUpdate xmlns="urn:Microsoft.Search.Registration.Response">
...
</ProviderUpdate>

这是在我的文件顶部定义的:

[WebService(Namespace = "urn:Microsoft.Search.Registration.Response")]

但它只是将 xmlns 更改为正确的值。

4

1 回答 1

0

string元素是您从 Web 服务返回的值的容器。您不能返回不在元素内的数据。

如果您想从 Web 服务返回您自己的 XML 代码,则不应使用内置框架来生成 Web 服务,而是使用 HTTP 处理程序,以便您可以直接返回响应,而不是包装在预先确定的 SOAP 消息中。

于 2012-05-28T11:21:25.210 回答