Meh*_*ikh 7 c# azure azure-blob-storage
我有一个控制台应用程序可以.Net core 2.2将文件上传到 Azure blob 存储。它完全没问题,并且可以在我的本地计算机上运行,但是当我将应用程序部署到 Azure 应用程序服务时,它会引发异常并显示以下错误:
Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd
问题出在这行代码上:
BlobServiceClient storageAccount = new BlobServiceClient("connection string")
System.Diagnostics.DiagnosticSource我尝试更改和的版本Azure.Storage.Blobs,但它在 Azure 应用服务上不起作用
编辑:我没有找到问题的任何解决方案,我更改了代码,以便使用 aps.net core 应用程序中的 Azure 存储。
3 解决此问题的可能方法
1. Install-Package System.Diagnostics.DiagnosticSource -Version 4.4.1 并将 nuget 包添加System.Net.Http 4.3.1到项目中。然后重新启动并再次运行。
2. 在 web.config 文件中,添加以下 bindingRedirect 标记:
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.DiagnosticSource"
publicKeyToken="cc7b13ffcd2ddd51"
culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1"/>
</dependentAssembly>Run Code Online (Sandbox Code Playgroud)
(如果您使用的是 app.config ,请删除所有绑定重定向并在顶部添加以下属性。)
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>Run Code Online (Sandbox Code Playgroud)
保存并重新启动应用程序服务并再次运行安装。
看看这是否有效,否则就去 3
3.使用门户禁用 Application Insights。重新启动并再次运行。
另请尝试将以下属性组添加到 *.csproj 文件中
<PropertyGroup>
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
</PropertyGroup>Run Code Online (Sandbox Code Playgroud)