Azure Functions DocumentClient 无法从程序集异常中加载类型

Azure Functions DocumentClient could not load type from assembly exception

我有一个调用实用程序库的 Azure Function v2,后者又实例化了一个 DocumentClient。当 运行 我的函数在本地时,它会在这一行抛出异常:

_client = new DocumentClient(new Uri(cosmosDbEndpoint), cosmosDbAuthKey, Storage.SerializerSettings, connectionPolicy);

System.Private.CoreLib: Exception while executing function: ComponentDesignInserter-Http-UploadFiles. Microsoft.Azure.Documents.Client: Could not load type 'System.Diagnostics.Eventing.EventProviderTraceListener' from assembly 'System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

我的实用程序库是 .NET Framework 4.7。我的 Azure Function v2 项目是 .NET Standard 2.0。有问题吗?

或者这是我需要在 Azure Function v2 项目中安装的某些依赖项的症状?实用程序库具有但 Azure Function v2 项目没有的依赖项?

如您所述,问题在于您使用的是 NET Standard 2.0 项目中的 NET Framework 4.7 库。

确保在您的 NET 4.7 库中,您使用的是 Cosmos DB Core SDK:https://www.nuget.org/packages/Microsoft.Azure.DocumentDB.Core/

不是 NET 完整框架包 (https://www.nuget.org/packages/Microsoft.Azure.DocumentDB)。

在你的Azure Functions V2 项目中,你也需要使用相同的nuget (Core)。如果您使用的是 Microsoft.Azure.WebJobs.Extensions.CosmosDB 包,它已经包含在内。