Azure Функции: ошибка хоста произошла во время операции запуска Не удалось загрузить файл - PullRequest
0 голосов
/ 17 июня 2020

Я пытаюсь использовать Microsoft.AspNetCore.Authentication.Facebook с проектом функций Azure. Я создал полностью чистый. net core 3.1 Azure Функциональный проект только со следующими зависимостями:

Microsoft.NET.Sdk.Functions 3.0.7
Microsoft.Azure.Functions.Extensions 1.0.0
Microsoft.AspNetCore.Authentication.Facebook 3.1.5

В файле запуска у меня есть следующий код:

 public override void Configure(IFunctionsHostBuilder builder)
 {           
     facebookOptions.AppId = Environment.GetEnvironmentVariable("Authentication:Facebook:AppId");
     facebookOptions.AppSecret = Environment.GetEnvironmentVariable("Authentication:Facebook:AppSecret");
 });

Когда я запускаю приложение, я получаю следующую ошибку в окне консоли:

> A host error has occurred during startup operation Could not load file
> or assembly 'Microsoft.AspNetCore.Authentication.Facebook,
> Version=3.1.5.0, Culture=neutral, PublicKeyToken='. The system cannot
> find the file specified.

Есть идеи, что может быть не так?

Ответы [ 2 ]

0 голосов
/ 18 июня 2020

После того, как я добавил библиотеку пользовательских секретов, отладка перестала работать, поэтому я потратил некоторое время на установку разных версий Azure Functions sdk.

Это может происходить только в моем проекте, но я решил поделиться сводкой проб и ошибок, так как это действительно отнимало много времени и на всякий случай, если у кого-то будет такая же проблема.

Microsoft.NET.SDK.Functions version 3.0.5 - 3.0.7
Resulted in the host error has occurred during startup operation Could not load file 

Microsoft.NET.SDK.Functions version 3.0.4
Resulted in FunctionsStartup not being called and debugging not triggering

Microsoft.NET.SDK.Functions version 3.0.3
Seems to be working with debugging and no error messages

Версия 3.0.3, похоже, пока работает с отладкой и без ошибок хоста. Так что пока я придерживаюсь этой версии, надеюсь, она будет исправлена ​​в будущих выпусках.

Вот зависимости, которые у меня есть в моем решении.

enter image description here

0 голосов
/ 18 июня 2020

Есть два способа устранения неполадок:

1. Добавьте элемент привязки Redirect в файл конфигурации.

   <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.AspNetCore.Authentication.Facebook" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="3.1.4" newVersion="3.1.5" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

Указывает, какую версию сборки использовать вместо старой. Это не обязательно требует, чтобы более поздняя версия была указана в newVersion, более ранняя версия может быть указана также в newVersion. в последующем упомянутом проекте (если требуется), в котором упоминается тот же пакет.

Для получения более подробной информации вы можете обратиться к этой статье .

...