Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Поставщик типов F# — это компонент, предоставляющий типы, свойства и методы для использования в программе. Поставщики типов создают то, что называется предоставленными типами, которые создаются компилятором F# и основаны на внешнем источнике данных.
Например, поставщик типов F# для SQL может создавать типы, представляющие таблицы и столбцы в реляционной базе данных. На самом деле это то, что делает поставщик типов SQLProvider .
Предоставленные типы зависят от входных параметров поставщика типов. Такие входные данные могут быть примером источника данных (например, JSON-файла схемы), URL-адресом, указывающим непосредственно на внешнюю службу, или строкой подключения к источнику данных. Поставщик типов также может гарантировать, что группы типов развернуты только по требованию: они расширяются, если программы действительно ссылаются на эти типы. Это обеспечивает прямую интеграцию крупномасштабных информационных пространств по запросу, таких как онлайн-рынки данных в строго типизированном виде.
Поставщики генеративных и удаленных типов
Поставщики типов доступны в двух формах: создание и удаление.
Поставщики генерированных типов создают типы, которые можно записать как типы .NET в сборку, в которой они создаются. Это позволяет использовать их из кода в других сборках. Это означает, что представление источника данных в типизированной форме обычно должно быть одним из типов .NET, которые можно реализовать.
Поставщики стирающих типов создают типы, которые можно использовать только в той сборке или проекте, где они были сгенерированы. Типы являются эфемерными; т. е. они не записываются в сборку и не могут использоваться кодом в других сборках. Они могут содержать отложенные элементы, позволяя использовать предоставленные типы из потенциально бесконечного информационного пространства. Они полезны для использования небольшого подмножества большого и связанного источника данных.
Часто используемые поставщики типов
Следующие широко используемые библиотеки содержат поставщиков типов для различных видов использования:
- FSharp.Data включает поставщиков типов для документных форматов и ресурсов JSON, XML, CSV и HTML.
- SQLProvider предоставляет строго типизированный доступ к реляционным базам данных через сопоставление объектов и запросы F# LINQ к этим источникам данных.
- FSharp.Data.SqlClient предоставляет набор поставщиков типов для проверки T-SQL на этапе компиляции в F#.
- Поставщик типов хранилища Azure предоставляет типы для больших двоичных объектов Azure, таблиц и очередей, что позволяет получить доступ к этим ресурсам без необходимости указывать имена ресурсов в виде строк в рамках программы.
- FSharp.Data.GraphQL содержит GraphQLProvider, который предоставляет типы на основе сервера GraphQL, указанного на основе URL-адреса.
При необходимости можно создавать собственные поставщики пользовательских типов или ссылаться на поставщиков типов, созданных другими. Например, предположим, что у вашей организации есть служба данных, предоставляющая большое и растущее число именованных наборов данных, каждая из которых имеет собственную стабильную схему данных. Вы можете создать поставщик типов, который считывает схемы и представляет последние доступные наборы данных программисту строго типизированным образом.