我需要使用 .NET 技术实现 API。该协议是基于 HTTP 的“普通旧 XML”(POX)。有 6 个 API 调用,但都来自同一个 URI。API 方法由顶级 XML 元素中的“方法”属性标识。请求和响应中的子 XML 元素取决于调用的方法。
例如:
<req method="GetStuff"><id>42</id></req>
可能会做出回应
<resp method="GetStuff"><Thing name="Bob"/></resp>
或者:
<req method="Status"><verbose>false</verbose></req>
可能会做出回应
<resp method="Status"><status>OK</status></resp>
我考虑过 WCF - 我可以看到,按照 REST API 的示例,我可以轻松地对 XML 进行序列化和反序列化,但看不到将方法属性映射到单独方法的明显ServiceContract
方法。我也可以考虑 MVC,但需要在 MVC 管道中的某个地方弄乱以将方法映射到适当的 Action。
请问有什么建议吗?