ObjectContext 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
엔터티 데이터를 개체로 쿼리 및 사용할 수 있는 기능을 제공합니다.
public ref class ObjectContext : IDisposable
public class ObjectContext : IDisposable
type ObjectContext = class
interface IDisposable
Public Class ObjectContext
Implements IDisposable
- 상속
-
ObjectContext
- 구현
예제
이 예제에서는 를 생성하는 ObjectContext방법을 보여줍니다.
// Create the ObjectContext.
ObjectContext context =
new ObjectContext("name=AdventureWorksEntities");
// Set the DefaultContainerName for the ObjectContext.
// When DefaultContainerName is set, the Entity Framework only
// searches for the type in the specified container.
// Note that if a type is defined only once in the metadata workspace
// you do not have to set the DefaultContainerName.
context.DefaultContainerName = "AdventureWorksEntities";
ObjectSet<Product> query = context.CreateObjectSet<Product>();
// Iterate through the collection of Products.
foreach (Product result in query)
Console.WriteLine("Product Name: {0}", result.Name);
설명
참고
ObjectContext 클래스는 스레드로부터 안전하지 않습니다. 다중 스레드 시나리오에서는 ObjectContext 의 데이터 개체 무결성을 보장할 수 없습니다.
ObjectContext 클래스는 개념적 모델에 정의된 엔터티 형식의 인스턴스인 개체로 데이터와 상호 작용하기 위한 기본 클래스입니다. 클래스의 인스턴스는 ObjectContext 다음을 캡슐화합니다.
개체 형식의 데이터베이스에 대한 연결입니다 EntityConnection .
모델을 개체 형식으로 설명하는 메타데이터입니다 MetadataWorkspace .
ObjectStateManager 캐시에 유지되는 개체를 관리하는 개체입니다.
개념적 모델을 나타내는 개체 계층이 엔터티 데이터 모델 도구에서 생성되는 경우 모델에 대한 를 나타내는 EntityContainer 클래스는 에서 ObjectContext파생됩니다.
생성자
ObjectContext(EntityConnection) |
지정된 연결을 사용하여 ObjectContext 클래스의 새 인스턴스를 초기화합니다. 생성하는 동안 메타데이터 작업 영역이 EntityConnection 개체에서 추출됩니다. |
ObjectContext(EntityConnection, String) |
지정된 연결 및 엔터티 컨테이너 이름을 사용하여 ObjectContext 클래스의 새 인스턴스를 초기화합니다. |
ObjectContext(String) |
지정된 연결 문자열 및 기본 엔터티 컨테이너 이름을 사용하여 ObjectContext 클래스의 새 인스턴스를 초기화합니다. |
ObjectContext(String, String) |
지정된 연결 문자열 및 엔터티 컨테이너 이름을 사용하여 ObjectContext 클래스의 새 인스턴스를 초기화합니다. |
속성
CommandTimeout |
모든 개체 컨텍스트 작업에 대한 제한 시간(초) 값을 가져오거나 설정합니다.
|
Connection |
개체 컨텍스트에서 사용하는 연결을 가져옵니다. |
ContextOptions |
ObjectContextOptions의 동작에 영향을 미치는 옵션이 포함된 ObjectContext 인스턴스를 가져옵니다. |
DefaultContainerName |
기본 컨테이너 이름을 가져오거나 설정합니다. |
MetadataWorkspace |
개체 컨텍스트에서 사용하는 메타데이터 작업 영역을 가져옵니다. |
ObjectStateManager |
개체 변경 내용을 추적하기 위해 개체 컨텍스트에서 사용하는 개체 상태 관리자를 가져옵니다. |
QueryProvider |
이 개체 컨텍스트와 연결된 LINQ 쿼리 공급자를 가져옵니다. |
메서드
AcceptAllChanges() |
개체 컨텍스트에서 개체에 대한 변경 내용을 모두 허용합니다. |
AddObject(String, Object) |
개체를 개체 컨텍스트에 추가합니다. |
ApplyCurrentValues<TEntity>(String, TEntity) |
제공된 개체의 스칼라 값을 같은 키를 가진 ObjectContext의 개체에 복사합니다. |
ApplyOriginalValues<TEntity>(String, TEntity) |
제공된 개체의 스칼라 값을 같은 키를 가진 ObjectContext에 있는 개체의 원래 값 집합에 복사합니다. |
ApplyPropertyChanges(String, Object) |
사용되지 않음.
분리된 개체의 속성 변경을 개체 컨텍스트에 이미 연결된 개체에 적용합니다. |
Attach(IEntityWithKey) |
개체에 엔터티 키가 있으면 개체 또는 개체 그래프를 개체 컨텍스트에 연결합니다. |
AttachTo(String, Object) |
특정 엔터티 집합에서 개체 또는 개체 그래프를 개체 컨텍스트에 연결합니다. |
CreateDatabase() |
현재 데이터 소스 연결과 StoreItemCollection에 있는 메타데이터를 사용하여 데이터베이스를 만듭니다. |
CreateDatabaseScript() |
StoreItemCollection에 있는 메타데이터에 대한 스키마 개체(테이블, 기본 키, 외래 키)를 만드는 DLL(데이터 정의 언어) 스크립트를 생성합니다. StoreItemCollection 은 SSDL(저장소 스키마 정의 언어) 파일의 메타데이터를 로드합니다. |
CreateEntityKey(String, Object) |
특정 개체에 대한 엔터티 키를 만들거나 엔터티 키가 이미 있는 경우 해당 엔터티 키를 반환합니다. |
CreateObject<T>() |
요청된 형식의 인스턴스를 만들고 반환합니다. |
CreateObjectSet<TEntity>() |
지정된 엔터티 형식의 개체에 대한 쿼리, 추가, 수정 및 삭제에 사용되는 새 ObjectSet<TEntity> 인스턴스를 만듭니다. |
CreateObjectSet<TEntity>(String) |
지정된 형식과 지정된 엔터티 집합 이름을 갖는 개체의 쿼리, 추가, 수정 및 삭제에 사용되는 새 ObjectSet<TEntity> 인스턴스를 만듭니다. |
CreateProxyTypes(IEnumerable<Type>) |
제공된 열거형의 각 형식에 대해 Entity Framework에서 사용할 수 있는 동등한 형식을 생성합니다. |
CreateQuery<T>(String, ObjectParameter[]) |
지정된 쿼리 문자열을 사용하여 현재 개체 컨텍스트에서 ObjectQuery<T>을 만듭니다. |
DatabaseExists() |
현재 데이터 소스 연결에서 데이터베이스로 지정된 데이터베이스가 데이터 소스에 존재하는지를 확인합니다. |
DeleteDatabase() |
현재 데이터 소스 연결에서 데이터베이스로 지정된 데이터베이스를 삭제합니다. |
DeleteObject(Object) |
개체에 삭제 표시를 합니다. |
Detach(Object) |
개체 컨텍스트에서 개체를 제거합니다. |
DetectChanges() |
ObjectStateEntry 변경 내용이 ObjectStateManager로 추적되는 모든 개체의 변경 내용과 동기화되도록 합니다. |
Dispose() |
개체 컨텍스트에서 사용하는 리소스를 해제합니다. |
Dispose(Boolean) |
개체 컨텍스트에서 사용하는 리소스를 해제합니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
ExecuteFunction(String, ObjectParameter[]) |
데이터 소스에 정의되어 있으며 개념적 모델로 표현되는 저장 프로시저 또는 함수를 실행합니다. 함수에서 반환되는 결과는 모두 무시되고 실행의 영향을 받는 행 수가 반환됩니다. |
ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[]) |
데이터 소스에 정의되어 있으며 개념적 모델로 표현되는 지정된 저장 프로시저 또는 함수를 지정된 매개 변수와 병합 옵션을 사용하여 실행합니다. 형식화된 ObjectResult<T>을 반환합니다. |
ExecuteFunction<TElement>(String, ObjectParameter[]) |
데이터 소스에 정의되어 있으며 개념적 모델에 매핑되는 저장 프로시저 또는 함수를 지정된 매개 변수를 사용하여 실행합니다. 형식화된 ObjectResult<T>을 반환합니다. |
ExecuteStoreCommand(String, Object[]) |
기존 연결을 사용하여 데이터 소스에 대해 직접 임의의 명령을 실행합니다. |
ExecuteStoreQuery<TElement>(String, Object[]) |
형식화된 결과의 시퀀스를 반환하는 쿼리를 데이터 소스에 대해 직접 실행합니다. |
ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[]) |
쿼리를 데이터 소스에 대해 직접 실행하고 형식화된 결과의 시퀀스를 반환합니다. 쿼리 결과를 엔터티로 추적할 수 있도록 엔터티 집합과 병합 옵션을 지정합니다. |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetKnownProxyTypes() |
기존 프록시 형식을 모두 반환합니다. |
GetObjectByKey(EntityKey) |
지정된 엔터티 키가 있는 개체를 반환합니다. |
GetObjectType(Type) |
지정된 형식의 프록시 개체와 연결된 POCO 엔터티의 엔터티 형식을 반환합니다. |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
LoadProperty(Object, String) |
지정된 탐색 속성과 기본 병합 옵션을 사용하여 제공된 개체와 관련된 개체를 명시적으로 로드합니다. |
LoadProperty(Object, String, MergeOption) |
지정된 탐색 속성과 지정된 병합 옵션을 사용하여 제공된 개체와 관련된 개체를 명시적으로 로드합니다. |
LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>) |
지정된 LINQ 쿼리와 기본 병합 옵션을 사용하여 제공된 개체와 관련된 개체를 명시적으로 로드합니다. |
LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption) |
지정된 LINQ 쿼리와 지정된 병합 옵션을 사용하여 제공된 개체와 관련된 개체를 명시적으로 로드합니다. |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
Refresh(RefreshMode, IEnumerable) |
개체 컨텍스트의 개체 컬렉션을 데이터 소스의 데이터로 업데이트합니다. |
Refresh(RefreshMode, Object) |
개체 컨텍스트의 개체를 데이터 소스의 데이터로 업데이트합니다. |
SaveChanges() |
데이터 소스에 대한 모든 업데이트를 유지하고 개체 컨텍스트에서 변경 내용 추적을 다시 설정합니다. |
SaveChanges(Boolean) |
사용되지 않음.
데이터 소스에 대한 모든 업데이트를 유지하고 선택적으로 개체 컨텍스트에서 변경 내용 추적을 다시 설정합니다. |
SaveChanges(SaveOptions) |
지정된 SaveOptions를 사용하여 데이터 소스에 대한 모든 업데이트를 유지합니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
Translate<TElement>(DbDataReader) |
엔터티 데이터의 행이 포함된 DbDataReader를 요청된 엔터티 형식의 개체로 변환합니다. |
Translate<TEntity>(DbDataReader, String, MergeOption) |
엔터티 데이터의 행이 포함된 DbDataReader를 특정 엔터티 집합에서 지정된 병합 옵션을 사용하여 요청된 엔터티 형식의 개체로 변환합니다. |
TryGetObjectByKey(EntityKey, Object) |
지정된 엔터티 키가 있는 개체를 반환합니다. |
이벤트
ObjectMaterialized |
쿼리 작업이나 로드 작업의 일부로 데이터 소스의 데이터에서 새 엔터티 개체가 만들어지는 경우 발생합니다. |
SavingChanges |
변경 내용이 데이터 소스에 저장될 때 발생합니다. |
적용 대상
추가 정보
.NET