2

我正在为我的项目使用实体框架和 wcf 休息服务。我需要的是我想改变像这样生成的 xml 结构

<ArrayOfBug>
<Bug>
<BugID>1</BugID>
<PageName>Home.aspx</PageName>
<BugDescription>Bug Testing</BugD`enter code here`escription>
<Priority>H</Priority>
</Bug>
</ArrayOfBug>

-------------

我需要属性而不是这样的元素

 <ArrayOfBug>
    <Bug BugID="1" PageName="Home.aspx" BugDescription="Bug Testing" Priority="H" >
    </Bug>
    </ArrayOfBug>

最好的方法是什么?我的界面是这样的

[OperationContract]
        [WebGet(BodyStyle=WebMessageBodyStyle.Bare,  UriTemplate = "/SelectAllBug", ResponseFormat = WebMessageFormat.Xml )]
        List<Bug> SelectAllBug();

提前感谢莫尼什

4

1 回答 1

1

WCF 中没有开箱即用的方式来做你想做的事。

您可以通过创建自定义消息格式化程序来扩展 WCF,如这篇优秀的博客文章中所示。不利的一面是,您需要花一些时间来了解 WCF 消息处理管道如何工作以潜在地处理请求和响应消息的格式设置。

于 2012-08-28T15:18:15.117 回答