EntityConnection.GetMetadataWorkspace Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Важно!
Этот API несовместим с CLS.
Возвращает рабочую область метаданных MetadataWorkspace, связанную с соединением EntityConnection.
public:
System::Data::Metadata::Edm::MetadataWorkspace ^ GetMetadataWorkspace();
public System.Data.Metadata.Edm.MetadataWorkspace GetMetadataWorkspace ();
[System.CLSCompliant(false)]
public System.Data.Metadata.Edm.MetadataWorkspace GetMetadataWorkspace ();
member this.GetMetadataWorkspace : unit -> System.Data.Metadata.Edm.MetadataWorkspace
[<System.CLSCompliant(false)>]
member this.GetMetadataWorkspace : unit -> System.Data.Metadata.Edm.MetadataWorkspace
Public Function GetMetadataWorkspace () As MetadataWorkspace
Возвращаемое значение
Рабочая область метаданных MetadataWorkspace, связанная с этим соединением EntityConnection.
- Атрибуты
Исключения
Встроенная строка подключения содержит недопустимое значение ключевого слова Metadata
.
Комментарии
Объект MetadataWorkspace создается автоматически при создании класса EntityConnection. Процесс создания может вызывать исключения, относящиеся к метаданным. Метаданные загружаются в память, и приложение entity Data Model (EDM) использует эти метаданные для доступа к информации о базовом источнике данных. Дополнительные сведения см. в разделе метаданные ADO.NET.
Чтобы избежать случайной синхронизации таких объектов, как System.Data.Common.CommandTrees и ObjectContext с их метаданными, EntityConnection необходимо заблокировать их метаданные. После блокировки метаданных изменения строки подключения не допускаются. Ниже приведены два сценария, в которых метаданные блокируются.
Экземпляр EntityConnection создается с помощью конструктора без параметров или конструктора EntityConnection(String) , который принимает строку подключения. В любом случае строка подключения может быть изменена несколько раз перед открытием подключения. Open или GetMetadataWorkspace блокирует метаданные.
Экземпляр EntityConnection создается с помощью конструктора EntityConnection(MetadataWorkspace, DbConnection) , который принимает MetadataWorkspace и DbConnection. В этом случае метаданные блокируются во время создания. Никакие изменения строки подключения не допускаются.
При загрузке метаданных объект проверяет наличие EntityConnection концептуальной модели, модели хранения и файла сопоставления.