无法在c#中运行Google Cloud PubSub,DLL问题

我正在努力将Google Cloud PubSub集成到我的c#项目中,我使用NuGet安装1.0.0-beta11 ,完全没有错误。 当我运行我的项目,当它到达使用pubsub的代码时,我收到以下错误:

An unhandled exception of type 'System.IO.FileLoadException' occurred in Google.Api.Gax.dll Additional information: Could not load file or assembly 'Google.Apis.Auth, Version=1.21.0.0, Culture=neutral, PublicKeyToken=4b01fa6e34db77ab' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 

NuGet确实安装了所有依赖项,包括Google.Apis.Auth.dll,但它是1.27.1。 我已经尝试了我能想到的一切,包括抓住那个dll的1.21.0并使用它,但没有成功。 我已经能够运行.net示例 ,没有错误。

有什么想法吗? 如果您需要更多信息,请告诉我

好的,我找到了对Google.Apis.Auth 1.21.0的引用 – 它在Grpc.Auth NuGet包中。

如果您只是添加对Grpc.Auth DLL的引用,您将会遇到这种类型的失败 – 但如果您通过NuGet管理所有依赖项,我希望它没问题 – 它应该为您添加程序集绑定重定向。

在不知道你的确切设置的情况下,说起来不是很棘手 – 可能是你的需要汇编绑定重定向,但是应用程序可以控制它们……特别是,如果你的应用程序只引用了它们库DLL,会导致问题。

作为一种解决方法,您可以手动添加程序集绑定重定向(这取决于应用程序类型的确切方式),或者只是在应用程序和库中添加对Google.Cloud.PubSub.V1的引用, NuGet将为您执行所有依赖处理。

您可以将以下内容附加到app.config文件中。