Я создал консольное приложение F # (.NET 4.7.2), а затем добавил пакет Nuget в FSharp.Data.SqlProvider
Тогда я написал этот код на F #
module File1
//#r "FSharp.Data.SqlProvider.dll"
open System
open FSharp.Data.Sql
let [<Literal>] dbVendor = Common.DatabaseProviderTypes.MSSQLSERVER
let [<Literal>] connString = "Server=localhost;Database=Northwind;Trusted_Connection=True"
let [<Literal>] useOptTypes = true
let [<Literal>] indivAmount = 1000
type sql =
SqlDataProvider<
dbVendor,
connString,
IndividualsAmount = indivAmount,
UseOptionTypes = useOptTypes>
let ctx = sql.GetDataContext()
После того как я все собрал, я получаю сообщение об ошибке, что означает эта ошибка?
Ошибка FS3021 Неожиданное исключение из предоставленного типа
'FSharp.Data.Sql.SqlDataProvider, DatabaseVendor = "0", ConnectionString = "Server = локальный; Database = Test, Trusted_Connection = True", UseOptionTypes = "True" + DataContext'
член 'GetMethods': поставщик типа
«FSharp.Data.Sql.SqlTypeProvider» сообщил об ошибке: время разработки
Тип 'System.Data.IDbConnection', используемый поставщиком типов, не был
находится в целевом наборе эталонных сборок '[сборка tgt
FSharp.Data.SqlProvider, версия = 1.1.62.0, культура = нейтральная; TGT
сборка mscorlib, версия = 4.0.0.0, культура = нейтральная,
PublicKeyToken = b77a5c561934e089; тгт сборка FSharp.Core,
Версия = 4.5.0.0, Культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a;
tgt сборка System.Core, версия = 4.0.0.0, культура = нейтральная,
PublicKeyToken = b77a5c561934e089; Система сборки ТГТ,
Версия = 4.0.0.0, Культура = нейтральная, PublicKeyToken = b77a5c561934e089;
tgt сборка System.Numerics, версия = 4.0.0.0, культура = нейтральная,
PublicKeyToken = b77a5c561934e089; tgt сборка System.ValueTuple,
Версия = 4.0.2.0, Культура = нейтральная, PublicKeyToken = cc7b13ffcd2ddd51] '.
Вы можете ссылаться на профиль, который содержит меньше типов, чем те,
нужен провайдеру типа вы
с помощью. ConsoleApplicationF C: \ Users \ UserXXX \ source \ repos \ ConsoleApplicationF \ ConsoleApplicationF \ File1.fs 22 Активно
Когда я делаю то же самое для NET CORE, я получаю еще одну ошибку
FS3033 Поставщик типов 'FSharp.Data.Sql.SqlTypeProvider' сообщил о
ошибка в контексте предоставленного типа
'FSharp.Data.Sql.SqlDataProvider, DatabaseVendor = "0", ConnectionString = "Server = локальный; Database = Test, Trusted_Connection = True"',
член 'GetDataContext'. Ошибка: метод 'System.String
tryGetConnectionString (Boolean, System.String, System.String,
System.String) 'не найден в типе' '. Этот метод может отсутствовать
в типах, доступных в целевых сборках