Не удалось загрузить файл или сборку 'System.Runtime.CompilerServices.Unsafe' - PullRequest
0 голосов
/ 22 декабря 2018

Пытаясь использовать SQLTypeProvider с postgres, я получаю следующую ошибку при запуске

dotnet build

ошибка FS3033: поставщик типа 'FSharp.Data.Sql.SqlTypeProvider' сообщил об ошибке: не удалось загрузить файлили сборка 'System.Runtime.CompilerServices.Unsafe, версия = 4.0.4.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a'.Система не может найти указанный файл.[/home/sashan/code/titan/src/Server/Server.fsproj]

мой провайдер данных:

type SQL = SqlDataProvider< 
                  ConnectionString = pg_dev_conn_string,
                  DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
                  UseOptionTypes = true >

Если я изменю его на следующий

type SQL = SqlDataProvider< 
              ConnectionString = pg_dev_conn_string,
              DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
              ResolutionPath = "/home/sashan/code/dotnet/2.1.500/sdk/NuGetFallbackFolder/system.runtime.compilerservices.unsafe/4.5.1/lib/netcoreapp2.0",
              UseOptionTypes = true >

Ошибка исчезает, но я не понимаю, почему.Исправление кажется действительно странным.Почему я должен указывать на файл за пределами моего проекта?Разве System.Runtime.CompilerServices.Unsafe.dll не должен находиться где-то в одном из подкаталогов проекта, где его может найти компилятор?

1 Ответ

0 голосов
/ 18 февраля 2019

У меня была та же проблема с контейнером Unity, и после обновления этой библиотеки от Nuget моя проблема решена

...