WCF Rest服务和protobuf网络

WCF Rest服务和protobuf网络,rest,wcf,protobuf-net,Rest,Wcf,Protobuf Net,我跟踪了这个链接 [https://www.drdobbs.com/windows/working-with-protobuf-wcf-services/240159282][1] 这个链接主要展示了如何将protobuf net与WCF服务一起用于序列化。我的要求是将WCF rest与WebGet和WebInvoke选项一起使用。它不适用于此,我总是以xml序列化的方式在客户端获取数据,而不是protobuf。然后,我访问了这里和其他网站上的无数链接,它们声称可以使用WCF+Protobuf,

我跟踪了这个链接

[https://www.drdobbs.com/windows/working-with-protobuf-wcf-services/240159282][1]

这个链接主要展示了如何将protobuf net与WCF服务一起用于序列化。我的要求是将WCF rest与WebGet和WebInvoke选项一起使用。它不适用于此,我总是以xml序列化的方式在客户端获取数据,而不是protobuf。然后,我访问了这里和其他网站上的无数链接,它们声称可以使用WCF+Protobuf,但没有WCF rest

有一条关于为protobuf开发自己的mediaformator的信息,但该界面在WCF预览版(2011)中,从未发布到我正在使用的.NET4.6

我是否遗漏了一些明显的东西,或者protobuf将无法与WCF rest一起工作

谢谢 Jay

(就protobuf网络库中的内容而言)

我没有特别针对WCF REST。在序列化级别,它应该可以正常工作,但我不知道将它挂接到任何特定的框架/实现中需要什么。这并不是我所期待的情景

目前,gRPC似乎比WCF更受欢迎,因此我们有gRPC的全面支持

如果我能做些什么来启用WCF REST,那很好——但这不是我研究过的主题。

(就protobuf net库中的内容而言)

我没有特别针对WCF REST。在序列化级别,它应该可以正常工作,但我不知道将它挂接到任何特定的框架/实现中需要什么。这并不是我所期待的情景

目前,gRPC似乎比WCF更受欢迎,因此我们有gRPC的全面支持


如果我能做些什么来启用WCF REST,那就好了——但这不是我研究过的主题。

因此,根据这里的答案,我可以让Protobuf net工作,但有一个单独的端点。它还存在参数的uri模板问题。而且,这种方式也不可能进行内容协商,因为我无法根据客户端的accept标头更改响应类型。之后,我看了一下,可以看到它还将默认的datacontract序列化程序替换为proto-one。看起来多个序列化程序不能以这种方式存在于同一个端点上进行内容协商。

因此,根据这里的回答,我可以使用单独的端点使Protobuf net工作。它还存在参数的uri模板问题。而且,这种方式也不可能进行内容协商,因为我无法根据客户端的accept标头更改响应类型。之后,我看了一下,可以看到它还将默认的datacontract序列化程序替换为proto-one。看起来无法在同一端点上存在多个序列化程序,以便以这种方式进行内容协商。

是。事实上,我已经看过了你关于类似问题的答案之一,你建议使用MVC库的mediaformator方法。但我发现,它从未进入WCF。我看到Protobuf net为WCF提供了行为扩展,我可以在WCF端点配置中使用它。只是我没有看到它对rest操作的影响。不幸的是,我被仅使用WCF rest而非mvc core或gRPC等较新堆栈的现有限制所束缚。事实上,我已经看过了你关于类似问题的答案之一,你建议使用MVC库的mediaformator方法。但我发现,它从未进入WCF。我看到Protobuf net为WCF提供了行为扩展,我可以在WCF端点配置中使用它。只是我没有看到它对rest操作的影响。不幸的是,我被仅使用WCF rest而非mvc core或gRPC等较新堆栈的现有限制所束缚。