.net 4.0 用于与遗留系统通信的Protobuf

.net 4.0 用于与遗留系统通信的Protobuf,.net-4.0,protocol-buffers,windows-xp,named-pipes,protobuf-net,.net 4.0,Protocol Buffers,Windows Xp,Named Pipes,Protobuf Net,我期待着将protobuf net与命名管道结合使用,以便与遗留系统(WinXP 32位,NetFramework 4.0.3)进行通信。 令人高兴的是,NetFramework4.0至少有2.4.6版可用。 最新版本中的readme.md声明net20/net35可以作为目标,但不太受支持。此外,信息页面说明需要Net 4.6.1+ 在项目配置中,我们发现至少必须以netstandard2.0为目标 有没有(无痛的)机会编译protobuf net的更高版本 对于NetFramework4.0

我期待着将protobuf net与命名管道结合使用,以便与遗留系统(WinXP 32位,NetFramework 4.0.3)进行通信。 令人高兴的是,NetFramework4.0至少有2.4.6版可用。 最新版本中的readme.md声明net20/net35可以作为目标,但不太受支持。此外,信息页面说明需要Net 4.6.1+ 在项目配置中,我们发现至少必须以netstandard2.0为目标

有没有(无痛的)机会编译protobuf net的更高版本 对于NetFramework4.0? 看来“System.Buffers”和“System.Memory”必须有替换项, 这可能需要做很多工作

此外,从源代码中我们可以看到,使用protobuf网络和命名管道仍然被认为是“实验性的”。 是否可以说明这离稳定还有多远? 我希望在如所示的生产环境中使用protobuf net,其中
对我来说是非常优雅的解决方案。

protobuf net v2包括net20和net35的下层目标;protobuf net v3没有。要深入讨论原因。v3是否可以根据v2进行假设构建?可能的话,需要付出适当的努力。不过,这篇博文更详细地讨论了这一点

最新版本中的readme.md声明可以针对net20/net35

请你能提供一个链接给我,这样我可以得到澄清。我查过了,我看不到那句话

此外,从源代码中我们可以看到,使用protobuf网络和命名管道仍然被认为是“实验性的”。是否可以说明这离稳定还有多远

实验命名为pipebasicrpc层,完全是实验性的;它被认为是不稳定的,我可能会为了支持gRPC而终止它(另请参见:protobuf net.gRPC),除非我有足够的理由增加更多的努力。特别是,微软正在投入一些精力使gRPC在过程中发挥作用,因此将这些努力结合起来可能更为实际。然而!这可能仅限于.NET5(或更高版本),如果您的目标是.NETFramework2.0,这对您没有帮助


最后:我不想告诉你这个,但是:.NETFramework的旧版本早就退役了。大多数图书馆作者——特别是免费图书馆的作者——不太可能投入大量的精力来正确地支持他们。

Hello Marc。是的,你是对的,我从v2中获取了readme.md,其中说明了目标net20和net35。杀死命名管道支持对我的用例非常不利,因此我考虑使用原始的原始BuffF状态。我同意您的看法,维护net40兼容性对您来说将是一项重要的工作,因此我考虑自己做这件事。谢谢你的快速反应response@AmbitiousD要明确的是:我没有“杀死”命名管道支架;它从未真正存在过是的,我理解,但如果我将一个新应用程序建立在一个可能不可用且不稳定的功能上,它可能会被杀死这一事实让我三思而后行。这很遗憾,因为从你的github页面上我喜欢protobuf网络的工作方式。基本上,我只是在寻找一种与传统系统接口的方式,因为我想避免在net40中实现一个新概念。