Поставщики типов
Поставщик типов F# — это компонент, предоставляющий типы, свойства и методы для использования в программе. Поставщики типов являются важной частью поддержки F# 3.0 для информационно-насыщенного программирования. Ключ к информационно-насыщенному программированию — устранение препятствий для работы с разнообразными источниками информации, найденными в Интернете и современных корпоративных средах. Одним из существенных препятствий для включения источника информации в программу является необходимость представления этой информации в виде типов, свойств и методов для использования в среде языка программирования. Написание таких типов вручную занимает очень много времени, а результат часто трудно поддерживать. Типичная альтернатива — использование генератор кода, который добавляет файлы в проект; однако обычные типы генераторов кода плохо интегрируются в исследовательские режимы программирования, поддерживаемые языком F#, поскольку созданный код необходимо заменять при каждом изменении ссылки на службу.
Типы, предоставляемые поставщиками типов F#, обычно основаны на внешних источниках информации. Например, поставщик типов F# для SQL предоставляет типы, свойства и методы, необходимые для работы непосредственно с таблицами любой базы данных SQL, к которой имеется доступ. Аналогично, поставщик типов для веб-служб языка WSDL предоставляет типы, свойства и методы, необходимые для работы непосредственно с любой веб-службой WSDL.
Набор типов, свойств и методов, предоставляемых поставщиком типов F#, может зависеть от параметров, заданных в программном коде. Например, поставщик типов может предоставлять различные типы в зависимости от строки подключения и URL-адреса службы. Таким образом, информационное пространство, доступное с помощью строки подключения или URL-адреса, непосредственно интегрируется в программу. Поставщик типов также может гарантировать развертывание групп типов только по запросу, то есть только при наличии ссылок на типы в программе. Это позволяет применять прямую интеграцию по запросу широкомасштабных информационных пространств (например, рынков оперативных данных) в строго типизированном виде.
F# содержит несколько встроенных поставщиков типов для часто используемых интернет-служб и служб корпоративных данных. Эти поставщики типов предоставляют простой постоянный доступ к реляционным базам данных SQL и сетевым службам OData и WSDL, а также поддерживают использование запросов LINQ F# для этих источников данных.
При необходимости можно создать собственные пользовательские поставщики типов или использовать уже созданные поставщики типов. Например, предположим, что ваша организация имеет службы данных, предоставляющие большое и возрастающее число именованных наборов данных, у каждого из которых имеется собственная стабильная схема данных. Можно создать поставщик типов, который считывает схемы и представляет программисту последние доступные наборы данных строго типизированным образом.
Связанные разделы
Название |
Описание |
---|---|
Пошаговое руководство. Доступ к базе данных SQL с помощью поставщиков типов (F#) |
Рассматривается использование поставщика типов SqlDataConnection для доступа к таблицам и хранимым процедурам базы данных SQL на основе строки подключения для непосредственного подключения к базе данных. При доступе используется сопоставление LINQ to SQL. |
Пошаговое руководство. Доступ к базе данных SQL с помощью поставщиков типов и сущностей (F#) |
Рассматривается использование поставщика типов SqlEntityConnection для доступа к таблицам и хранимым процедурам базы данных SQL на основе строки подключения для непосредственного подключения к базе данных. При доступе используется сопоставление LINQ to Entities. Этот метод работает с любой базой данных, однако в примере демонстрируется SQL Server. |
Пошаговое руководство. Доступ к службе OData с помощью поставщиков типов (F#) |
Рассматривается использование поставщика типов ODataService для доступа к службе OData строго типизированным способом на основе URL-адреса службы. |
Пошаговое руководство. Доступ к веб-службе с помощью поставщиков типов (F#) |
Рассматривается использование поставщика типов WsdlService для доступа к веб-службе языка WSDL строго типизированным способом на основе URL-адреса службы. |
Пошаговое руководство. Создание типов F# из файла схемы DBML (F#) |
Рассматривается использование поставщика типов DbmlFile для доступа к таблицам и хранимым процедурам базы данных SQL на основе DBML-файла, задающего спецификацию схемы базы данных Linq-SQL. |
Пошаговое руководство. Создание типов F# из файла схемы EDMX (F#) |
Рассматривается использование поставщика типов EdmxFile для доступа к таблицам и хранимым процедурам базы данных SQL на основе EDMX-файла, задающего спецификацию схемы Entity Framework. |
Предоставляются сведения о написании собственных поставщиков типов. |
|
Предоставляются сведения о проблемах безопасности при разработке поставщиков типов. |
|
Предоставляются сведения об общих проблемах, которые могут возникать при работе с поставщиками типов, и содержатся предложения по их решению. |
См. также
Основные понятия
Новые возможности Visual Studio 2013