将通用方法与WCF或ADO.NET数据服务等WebService一起使用

时间:2009-12-08 19:08:23

标签: wcf generics methods wcf-data-services

是否可以在WCF或ADO.NET DS中使用通用方法?

或者是否可以使用WCF或ADO.NET DS创建通用WebService存储库?

1 个答案:

答案 0 :(得分:2)

答案是“mu”。

你在想错了。

WCF - 或一般的Web服务 - 与暴露方法无关。这是关于公开数据或消息合同。

通过设计交换的消息而不是类接口来设计服务。


有几种方法可以设计消息:

  1. 如果您有XML工具并且使用XSD,则可能需要为输入和输出消息设计XML Schema。然后将其嵌入到WSDL中,use svcutil to generate the WCF stub or proxy

  2. 如果您对XML的外观有一个良好的愿景,您可以创建示例输入+输出消息,然后使用类似the XSD.exe tool in the .NET SDK的内容“导出”或从这些消息中推断出XSD。推断的XSD并不总是你想要的 - 如果你从单个消息开始,它通常不够通用。但它会让你开始。获得XSD后,您可以转到步骤1.实际上,步骤1和步骤2可以是迭代的。

  3. 设计数据合约类using the DataContract attribute

  4. 同样的事,using the MessageContract attribute

  5. 使用像WSCF这样的工具。

  6. other articles on the blogs on MSDN描述了这种方法,并详细介绍了上述选项。