【发布时间】:2014-07-23 03:15:03
【问题描述】:
我正在实现自定义 WCF REST 行为,它实现/覆盖基本 WebHttpBehavior,但允许使用自定义序列化程序进行 REST 通信。代码基于 Carlos 的工作here。
我已经让它运行了,但问题是我们真的很想使用 UriTemplate 功能来允许真正的 REST-ful URI。有没有人看到这样做或可以提供帮助以找到正确的实现?
我们坚持使用 WCF 是为了同时提供 REST 和 SOAP 端点,因此这里不能选择迁移到 Web API。
【问题讨论】:
-
您如何托管您的 WCF 服务?你用的是什么绑定?
-
我们通过代码使用服务激活通过 IIS 托管。我们有一个自定义 REST 和 SOAP 服务主机工厂设置,让我们可以更改行为、绑定等,然后使用标准 WCF 路由服务激活来使用 REST 和 SOAP 工厂加载每个服务。
-
嘿@Paul,问题是我不知道如何重新实现 UriTemplate 功能。我们已经覆盖了基本的 WebHttpBehavior 以添加额外的功能,但这导致我们失去了包括执行 UriTemplate 路由能力的基本功能。如果您查看我们链接到的 Carlos 的文章,他甚至表示他们没有将其包含在示例中,因为它太难了。我正在寻找如何在我们重写的方法/类中执行此操作的参考或示例。
-
@BrentPabst 来自 Carlos 的“博客”...“在新的 WCF Web API(您可以在 Codeplex 网站上预览这些位)中,实现这样的场景要简单得多,而且其他功能(例如 UriTemplate) 将在插入新格式化程序后继续工作。"...你读过wcf.codeplex.com/discussions/255873 吗?
标签: c# .net wcf rest uritemplate