如何拥有可在多个 C# NuGet 中使用的通用 protobuf 消息?

问题描述 投票:0回答:1

我正在尝试创建一个通用的 protobuf 消息,该消息将在多个 C# NuGet 中使用,有点像消息头。
我已将常见的原型文件保存在另一个存储库中,并将其用作那些 C# NuGets 存储库的子模块。
打包单个 NuGet 时,编译似乎很好。
但是,当我有一个 C# 微服务项目并尝试使用 NuGets 时,我收到常见消息的歧义错误。

我是否以正确的方式处理问题?或者我应该采取其他方法来解决这个问题吗?谢谢!

c# .net protocol-buffers
1个回答
0
投票

您能分享一下NuGet包的结构吗? 看起来您的所有包中都包含了通用的原始文件。 然后,当您引用多个 NuGet 包时,所有这些包都包含相同的通用原型。

示例如下:

NuGet 包 1:

 - BaseClass
 - OrderClass
 - InvoiceClass

NuGet 包 2:

 - BaseClass
 - ProductClass
 - AttributeClass

当您引用这两个包时,如果两个包中的命名空间相同,则会出现 BaseClass 歧义错误。

答案1

BaseClass
创建 NuGet 包。然后引用此包作为其他 NuGet 包的依赖项。

答案2

更改

BaseClass
以在每个 NuGet 包中具有不同的命名空间。

© www.soinside.com 2019 - 2024. All rights reserved.