Получение "Не удалось загрузить файл или сборку 'FSharp.Core, Version = 4.7.0.0" для опубликованного приложения - PullRequest
1 голос
/ 23 марта 2020

Я создал консольное приложение F # с миграциями БД. Когда я запускаю команду:

dotnet fm migrate -c "Server=(localdb)\MsSQLLocalDB;Database=Foo;Trusted_Connection=True" -a .\DbMigrations.dll -p SqlServer 

я получаю сообщение об ошибке:

Необработанное исключение: System.IO.FileLoadException: Не удалось загрузить файл или сборку 'FSharp.Core, Version = 4.7.0.0, Культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a '. Не удалось найти или загрузить указанный файл c. (Исключение из HRESULT: 0x80131621) ---> System.IO.FileLoadException: не удалось загрузить файл или сборку 'FSharp.Core, версия = 4.7.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a'.

Содержимое DbMigrations.proj:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <OutputType>Exe</OutputType>
  </PropertyGroup>

  <ItemGroup>
    <Compile Include="202003221630_AddDayCloseTable.fs" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="FluentMigrator" Version="3.2.1" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Update="FSharp.Core" Version="4.7.1" />
  </ItemGroup>
</Project>

И опубликованная папка содержит FSharp.Core.dll. И .deps.json фрагмент файла:

"FSharp.Core/4.7.1": {
        "runtime": {
          "lib/netstandard2.0/FSharp.Core.dll": {
            "assemblyVersion": "4.7.0.0",
            "fileVersion": "4.700.20.10408"
          }
        },
        "resources": {
          "lib/netstandard2.0/cs/FSharp.Core.resources.dll": {
            "locale": "cs"
          },
          "lib/netstandard2.0/de/FSharp.Core.resources.dll": {
            "locale": "de"
          },
          "lib/netstandard2.0/es/FSharp.Core.resources.dll": {
            "locale": "es"
          },
          "lib/netstandard2.0/fr/FSharp.Core.resources.dll": {
            "locale": "fr"
          },
          "lib/netstandard2.0/it/FSharp.Core.resources.dll": {
            "locale": "it"
          },
          "lib/netstandard2.0/ja/FSharp.Core.resources.dll": {
            "locale": "ja"
          },
          "lib/netstandard2.0/ko/FSharp.Core.resources.dll": {
            "locale": "ko"
          },
          "lib/netstandard2.0/pl/FSharp.Core.resources.dll": {
            "locale": "pl"
          },
          "lib/netstandard2.0/pt-BR/FSharp.Core.resources.dll": {
            "locale": "pt-BR"
          },
          "lib/netstandard2.0/ru/FSharp.Core.resources.dll": {
            "locale": "ru"
          },
          "lib/netstandard2.0/tr/FSharp.Core.resources.dll": {
            "locale": "tr"
          },
          "lib/netstandard2.0/zh-Hans/FSharp.Core.resources.dll": {
            "locale": "zh-Hans"
          },
          "lib/netstandard2.0/zh-Hant/FSharp.Core.resources.dll": {
            "locale": "zh-Hant"
          }
        }
      }

Что мне сделать, чтобы это исправить?

...