这有点愚蠢的问题。但是......
我正在公开街道位置的服务。到目前为止,我一直在做的是使用Entity Framework获取数据并使用XElement将数据解析为XML。然后在我的服务层中,我将返回XElement以在我的服务中公开。
这是暴露数据的正确方法吗?由于WCF正在使用数据协定,而数据协议反过来又串行化为XML,将它自己转换为XML是一种不好的做法吗?
我也可以返回一个List来完成同样的事情。但是,这意味着我无法控制XML的外观......
我可以遵循哪些最佳做法,哪里可以阅读有关最佳做法的一些好信息。我一直在这个网站上搜索,但在最佳实践方面有很多不同的主题。
由于
答案 0 :(得分:2)
交换XML并不是一种坏习惯,但是,我认为通过交换类型安全数据可以获得更多好处。只需创建类并使用DataContract
和DataMember
属性修饰它们。 WCF将负责在您的服务和客户之间对它们进行序列化。这样,您将在客户端代码中拥有具有类型安全属性的对象,并且这些数据可能更容易使用。
答案 1 :(得分:1)
我会使用DataContracts ...你不必自己序列化...... Datacontracts是(imho)更好的方式。