Поделиться через


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. Процесс создания может вызывать исключения, относящиеся к метаданным. Метаданные загружаются в память, и приложение модели EDM использует эти метаданные для доступа к сведениям о базовом источнике данных. Дополнительные сведения см. в разделе метаданные ADO.NET.

Чтобы избежать непреднамеренного размещения таких объектов, как System.Data.Common.CommandTrees и ObjectContext не синхронизированных с их метаданными, EntityConnection необходимо заблокировать их метаданные. После блокировки метаданных изменения строка подключения не допускаются. Ниже приведены два сценария, в которых метаданные блокируются.

  • Экземпляр EntityConnection создается с помощью конструктора без параметров или EntityConnection(String) через конструктор, который принимает строка подключения. В любом случае строка подключения может быть изменена несколько раз перед открытием подключения. Open или GetMetadataWorkspace блокирует метаданные.

  • Экземпляр EntityConnection создается с помощью конструктора EntityConnection(MetadataWorkspace, DbConnection) , который принимает MetadataWorkspace и DbConnection. В этом случае метаданные блокируются во время создания. Изменения в строка подключения не допускаются.

При загрузке метаданных проверяет наличие EntityConnection концептуальной модели, модели хранения и файла сопоставления.

Применяется к