0

我写了一种获取详细信息的方法。在休息客户端得到这样的响应。

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">&lt;Meetings&gt;&#xD;
&lt;Meeting&gt;&#xD;
&lt;Id&gt;1&lt;/Id&gt;&#xD;
&lt;Name&gt;Meeting1&lt;/Name&gt;&#xD;
&lt;Place&gt;SR Nagar&lt;/Place&gt;&#xD;
&lt;Time&gt;12/4/12 12:30pm&lt;/Time&gt;&#xD;
&lt;/Meeting&gt;&#xD;
&lt;Meeting&gt;&#xD;
&lt;Id&gt;2&lt;/Id&gt;&#xD;
&lt;Name&gt;Meeting2&lt;/Name&gt;&#xD;
&lt;Place&gt;Begumpet&lt;/Place&gt;&#xD;
&lt;Time&gt;12/4/12 1:00pm&lt;/Time&gt;&#xD;
&lt;/Meeting&gt;&#xD;
&lt;/Meetings&gt;&#xD;
</string>

在呈现的 html 中变得正确。

<Meetings> <Meeting> <Id>1</Id> <Name>Meeting1</Name> <Place>SR Nagar</Place> <Time>12/4/12 12:30pm</Time> </Meeting> <Meeting> <Id>2</Id> <Name>Meeting2</Name> <Place>Begumpet</Place> <Time>12/4/12 1:00pm</Time> </Meeting> </Meetings>

如何在 wcf 的代码中处理它以避免 <

4

2 回答 2

3

您的服务操作返回string并且您正在将 XML 写入该字符串。它总是看起来像这样,浏览器正确显示它只是因为它隐藏string了标签并取消了内容。

要返回真正的 XML,您不能将string其用作返回值。尝试使用例如XElement.

于 2012-04-12T10:14:27.853 回答
1

在您的[OperationContract]方法中,不是返回一个字符串,而是返回一个Meeting对象数组。该类Meeting应包含您要返回的属性:

[DataContract]
public class Meeting
{
    [DataMember]
    public int Id { get; set; }
    [DataMember]
    public string Name { get; set; }
    [DataMember]
    public string Place { get; set; }
    // etc...
}

如果您使用的是 .NET 4.0 及更高版本,则不需要[DataContract]and属性。[DataMember]

于 2012-04-12T10:20:39.847 回答