Compartir a través de


ObjectContext (Clase)

[Esta página es específica de la versión 6 de Entity Framework. La versión más reciente está disponible como el paquete NuGet de Entity Framework. Para más información sobre Entity Framework, consulte msdn.com/es-ES/data/ef].

ObjectContext es el objeto de nivel superior que encapsula una conexión entre CLR y la base de datos, que actúa como puerta de enlace para las operaciones de creación, lectura, actualización y eliminación.

Jerarquía de herencia

System.Object
  System.Data.Entity.Core.Objects.ObjectContext

Espacio de nombres:  System.Data.Entity.Core.Objects
Ensamblado:  EntityFramework (en EntityFramework.dll)

Sintaxis

'Declaración
<SuppressMessageAttribute("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")> _
Public Class ObjectContext _
    Implements IDisposable, IObjectContextAdapter
'Uso
Dim instance As ObjectContext
[SuppressMessageAttribute("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
public class ObjectContext : IDisposable, 
    IObjectContextAdapter
[SuppressMessageAttribute(L"Microsoft.Maintainability", L"CA1506:AvoidExcessiveClassCoupling")]
public ref class ObjectContext : IDisposable, 
    IObjectContextAdapter
[<SuppressMessageAttribute("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")>]
type ObjectContext =  
    class 
        interface IDisposable 
        interface IObjectContextAdapter 
    end
public class ObjectContext implements IDisposable, IObjectContextAdapter

El tipo ObjectContext expone los siguientes miembros.

Constructores

  Name Descripción
Método público ObjectContext(String) Inicializa una nueva instancia de la clase ObjectContext con la cadena de conexión y el nombre de contenedor de entidades predeterminado especificados.
Método público ObjectContext(EntityConnection) Inicializa una nueva instancia de la clase ObjectContext con la conexión especificada.Durante la construcción, el área de trabajo de metadatos se extrae del objeto EntityConnection.
Método protegido ObjectContext(String, String) Inicializa una nueva instancia de la clase ObjectContext con la cadena de conexión y el nombre de contenedor de entidades especificados.
Método público ObjectContext(EntityConnection, Boolean) Crea un ObjectContext con la conexión y el área de trabajo de metadatos especificados.
Método protegido ObjectContext(EntityConnection, String) Inicializa una nueva instancia de la clase ObjectContext con la conexión y el nombre de contenedor de entidades especificados.

Superior

Propiedades

  Name Descripción
Propiedad pública CommandTimeout Obtiene o establece el valor de tiempo de espera, en segundos, para todas las operaciones del contexto del objeto.Un valor NULL indica que se usará el valor predeterminado del proveedor subyacente.
Propiedad pública Connection Obtiene la conexión usada por el contexto del objeto.
Propiedad pública ContextOptions Obtiene la instancia de ObjectContextOptions que contiene opciones que afectan al comportamiento del ObjectContext .
Propiedad pública DefaultContainerName Obtiene o establece el nombre del contenedor predeterminado.
Propiedad pública InterceptionContext Devuelve la DbInterceptionContext que se está usando para este contexto.
Propiedad pública MetadataWorkspace Obtiene el área de trabajo de metadatos usada por el contexto del objeto.
Propiedad pública ObjectStateManager Obtiene el administrador de estados de objetos usado por el contexto del objeto para realizar el seguimiento de los cambios en los objetos.
Propiedad protegida QueryProvider Obtiene el proveedor de consultas LINQ asociado a este contexto del objeto.
Propiedad pública TransactionHandler Obtiene el controlador de transacciones que usa este contexto.Puede ser NULL si no se ha iniciado ninguna transacción.

Superior

Métodos

  Name Descripción
Método público AcceptAllChanges Acepta todos los cambios realizados en los objetos del contexto del objeto.
Método público AddObject Agrega un objeto al contexto del objeto.
Método público ApplyCurrentValues<TEntity> Copia los valores escalares del objeto proporcionado al objeto de ObjectContext que tiene la misma clave.
Método público ApplyOriginalValues<TEntity> Toma los valores escalares del objeto proporcionado y los copia en el conjunto de valores originales para el objeto del ObjectContext que tiene la misma clave.
Método público ApplyPropertyChanges Obsoleta. Aplica los cambios de propiedades de un objeto desasociado a un objeto ya asociado al contexto del objeto.
Método público Attach Asocia un objeto o un gráfico de objetos al contexto del objeto cuando el objeto tiene una clave de entidad.
Método público AttachTo Asocia un objeto o un gráfico de objetos al contexto del objeto de un conjunto de entidades determinado.
Método público CreateDatabase Crea la base de datos usando la conexión del origen de datos actual y los metadatos de StoreItemCollection .
Método público CreateDatabaseScript Genera un script del lenguaje de definición de datos (DDL) que crea objetos de esquema (tablas, claves principales, claves externas) para los metadatos de StoreItemCollection .StoreItemCollection carga los metadatos de los archivos del lenguaje de definición de esquemas de almacenamiento (SSDL, Store Schema Definition Language).
Método público CreateEntityKey Crea la clave de entidad para un objeto determinado o devuelve la clave de entidad si ya existe.
Método público CreateObject<T> Crea y devuelve una instancia del tipo solicitado.
Método público CreateObjectSet<TEntity>() Crea una nueva instancia de ObjectSet<TEntity> que se usa para consultar, agregar, modificar y eliminar objetos del tipo de entidad especificado.
Método público CreateObjectSet<TEntity>(String) Crea una nueva instancia de ObjectSet<TEntity> que se usa para consultar, agregar, modificar y eliminar objetos del tipo especificado y con el nombre del conjunto de entidades indicado.
Método público CreateProxyTypes Genera un tipo equivalente que se puede usar con Entity Framework para cada tipo de la enumeración proporcionada.
Método público CreateQuery<T> Crea una ObjectQuery<T> en el contexto del objeto actual usando la cadena de consulta especificada.
Método público DatabaseExists Comprueba si la base de datos que se especifica como la base de datos en la conexión de almacenamiento actual existe en el almacenamiento.La mayor parte del trabajo real la hace la implementación de DbProviderServices para la conexión de almacenamiento actual.
Método público DeleteDatabase Elimina la base de datos que se especifica como base de datos en la conexión del origen de datos actual.
Método público DeleteObject Marca un objeto para su eliminación.
Método público Detach Quita el objeto del contexto del objeto.
Método público DetectChanges Garantiza que los cambios de ObjectStateEntry se sincronicen con los cambios en todos los objetos de los que ObjectStateManager realiza un seguimiento.
Método público Dispose() Libera los recursos usados por el contexto del objeto.
Método protegido Dispose(Boolean) Libera los recursos usados por el contexto del objeto.
Método público Equals (Se hereda de Object).
Método público ExecuteFunction(String, ObjectParameter[]) Ejecuta un procedimiento almacenado o una función que se define en el origen de datos y se expresa en el modelo conceptual, descarta cualquier resultado devuelto de la función y devuelve el número de filas afectadas por la ejecución.
Método público ExecuteFunction<TElement>(String, ObjectParameter[]) Ejecuta un procedimiento almacenado o una función que se define en el origen de datos y se asigna en el modelo conceptual, con los parámetros especificados.Devuelve un objeto ObjectResult<T> con tipo.
Método público ExecuteFunction<TElement>(String, ExecutionOptions, ObjectParameter[]) Ejecuta la función especificada en el contenedor predeterminado.
Método público ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[]) Ejecuta la función o el procedimiento almacenado especificado que se define en el origen de datos y se expresa en el modelo conceptual, con los parámetros y la opción de combinación especificados.Devuelve un objeto ObjectResult<T> con tipo.
Método público ExecuteStoreCommand(String, Object[]) Ejecuta un comando arbitrario directamente en el origen de datos usando la conexión existente.El comando se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreCommand(TransactionalBehavior, String, Object[]) Ejecuta un comando arbitrario directamente en el origen de datos usando la conexión existente.El comando se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreCommandAsync(String, Object[]) Ejecuta de manera asíncrona un comando arbitrario directamente en el origen de datos usando la conexión existente.El comando se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreCommandAsync(String, CancellationToken, Object[]) Ejecuta de manera asíncrona un comando arbitrario directamente en el origen de datos usando la conexión existente.El comando se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreCommandAsync(TransactionalBehavior, String, Object[]) Ejecuta de manera asíncrona un comando arbitrario directamente en el origen de datos usando la conexión existente.El comando se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreCommandAsync(TransactionalBehavior, String, CancellationToken, Object[]) Ejecuta de manera asíncrona un comando arbitrario directamente en el origen de datos usando la conexión existente.El comando se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQuery<TElement>(String, Object[]) Ejecuta una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Los resultados no son seguidos por el contexto. Utilice la sobrecarga que especifica que un nombre de conjunto de entidades haga un seguimiento de los resultados.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQuery<TElement>(String, ExecutionOptions, Object[]) Ejecuta una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Los resultados no son seguidos por el contexto. Utilice la sobrecarga que especifica que un nombre de conjunto de entidades haga un seguimiento de los resultados.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQuery<TElement>(String, String, ExecutionOptions, Object[]) Ejecuta una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Si se especifica el nombre de un conjunto de entidades, los resultados serán objeto de seguimiento por el contexto.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQuery<TElement>(String, String, MergeOption, Object[]) Ejecuta una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Si se especifica el nombre de un conjunto de entidades, los resultados serán objeto de seguimiento por el contexto.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQueryAsync<TElement>(String, Object[]) Ejecuta de manera asíncrona una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Los resultados no son seguidos por el contexto. Utilice la sobrecarga que especifica que un nombre de conjunto de entidades haga un seguimiento de los resultados.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, Object[]) Ejecuta de manera asíncrona una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Los resultados no son seguidos por el contexto. Utilice la sobrecarga que especifica que un nombre de conjunto de entidades haga un seguimiento de los resultados.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQueryAsync<TElement>(String, CancellationToken, Object[]) Ejecuta de manera asíncrona una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Los resultados no son seguidos por el contexto. Utilice la sobrecarga que especifica que un nombre de conjunto de entidades haga un seguimiento de los resultados.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, CancellationToken, Object[]) Ejecuta de manera asíncrona una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Los resultados no son seguidos por el contexto. Utilice la sobrecarga que especifica que un nombre de conjunto de entidades haga un seguimiento de los resultados.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, Object[]) Ejecuta de manera asíncrona una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Si se especifica el nombre de un conjunto de entidades, los resultados serán objeto de seguimiento por el contexto.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método público ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, CancellationToken, Object[]) Ejecuta de manera asíncrona una consulta directamente contra el origen de datos y devuelve una secuencia de resultados con tipo.La consulta se especifica usando el lenguaje de consulta nativo del servidor, como SQL.Si se especifica el nombre de un conjunto de entidades, los resultados serán objeto de seguimiento por el contexto.Como con cualquier API que acepte SQL, es importante parametrizar cualquier dato proporcionado por el usuario para protegerse de un ataque de inyección de SQL.Se pueden incluir marcadores de posición de parámetros en la consulta de SQL y, a continuación, proporcionar valores del parámetro como argumentos adicionales.Cualquier valor de parámetro que se proporcione se convertirá automáticamente en un DbParameter.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Alternativamente, también se puede construir un DbParameter y proporcionárselo a SqlQuery.Esto permite usar parámetros nombrados en la cadena de consulta de SQL.context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Método protegido Finalize Finaliza una instancia de la clase ObjectContext. (Invalida a Object.Finalize()).
Método público GetHashCode (Se hereda de Object).
Método públicoMiembro estático GetKnownProxyTypes Devuelve todos los tipos de proxy existentes.
Método público GetObjectByKey Devuelve un objeto que tiene la clave de entidad especificada.
Método públicoMiembro estático GetObjectType Devuelve el tipo de la entidad POCO asociada a un objeto proxy de un tipo especificado.
Método público GetType (Se hereda de Object).
Método público LoadProperty(Object, String) Carga explícitamente un objeto relacionado con el objeto proporcionado por la propiedad de navegación especificada y usando la opción de combinación predeterminada.
Método público LoadProperty(Object, String, MergeOption) Carga explícitamente un objeto relacionado con el objeto proporcionado por la propiedad de navegación especificada y usando la opción de combinación indicada.
Método público LoadProperty<TEntity>(TEntity, Expression<Func<TEntity, Object>>) Carga explícitamente un objeto relacionado con el objeto proporcionado por la consulta LINQ especificada y usando la opción de combinación predeterminada.
Método público LoadProperty<TEntity>(TEntity, Expression<Func<TEntity, Object>>, MergeOption) Carga explícitamente un objeto relacionado con el objeto proporcionado por la consulta LINQ especificada y usando la opción de combinación especificada.
Método protegido MemberwiseClone (Se hereda de Object).
Método público Refresh(RefreshMode, IEnumerable) Actualiza una colección de objetos en el contexto del objeto con datos procedentes de la base de datos.
Método público Refresh(RefreshMode, Object) Actualiza un objeto en el contexto del objeto con datos procedentes de la base de datos.
Método público RefreshAsync(RefreshMode, IEnumerable) Actualiza de manera asíncrona una colección de objetos en el contexto del objeto con datos procedentes de la base de datos.
Método público RefreshAsync(RefreshMode, Object) Actualiza de manera asíncrona un objeto en el contexto del objeto con datos procedentes de la base de datos.
Método público RefreshAsync(RefreshMode, IEnumerable, CancellationToken) Actualiza de manera asíncrona una colección de objetos en el contexto del objeto con datos procedentes de la base de datos.
Método público RefreshAsync(RefreshMode, Object, CancellationToken) Actualiza de manera asíncrona un objeto en el contexto del objeto con datos procedentes de la base de datos.
Método público SaveChanges() Conserva todas las actualizaciones de la base de datos y restablece el seguimiento de cambios en el contexto del objeto.
Método público SaveChanges(Boolean) Obsoleta. Conserva todas las actualizaciones en la base de datos y, opcionalmente, restablece el seguimiento de cambios en el contexto del objeto.
Método público SaveChanges(SaveOptions) Conserva todas las actualizaciones en la base de datos y, opcionalmente, restablece el seguimiento de cambios en el contexto del objeto.
Método público SaveChangesAsync() Conserva de manera asíncrona todas las actualizaciones en la base de datos y restablece el seguimiento de cambios en el contexto del objeto.
Método público SaveChangesAsync(CancellationToken) Conserva de manera asíncrona todas las actualizaciones en la base de datos y restablece el seguimiento de cambios en el contexto del objeto.
Método público SaveChangesAsync(SaveOptions) Conserva de manera asíncrona todas las actualizaciones en la base de datos y, opcionalmente. restablece el seguimiento de cambios en el contexto del objeto.
Método público SaveChangesAsync(SaveOptions, CancellationToken) Conserva de manera asíncrona todas las actualizaciones en la base de datos y, opcionalmente. restablece el seguimiento de cambios en el contexto del objeto.
Método público ToString (Se hereda de Object).
Método público Translate<TElement>(DbDataReader) Convierte un objeto DbDataReader que contiene filas de datos de entidad en objetos del tipo de entidad solicitado.
Método público Translate<TEntity>(DbDataReader, String, MergeOption) Convierte un DbDataReader que contiene filas de datos de entidad en objetos del tipo de entidad solicitado, en un conjunto de entidades concreto, y con la opción de combinación especificada.
Método público TryGetObjectByKey Devuelve un objeto que tiene la clave de entidad especificada.

Superior

Eventos

  Name Descripción
Evento público ObjectMaterialized Se produce cuando se crea un nuevo objeto entidad a partir de datos del origen de datos como parte de una operación de consulta o de carga.
Evento público SavingChanges Se produce cuando se guardan cambios en el origen de datos.

Superior

Implementaciones de interfaz explícita

  Name Descripción
Implementación explícita de interfacesPropiedad privada IObjectContextAdapter.ObjectContext Se devuelve a sí mismo.ObjectContext implementa IObjectContextAdapter para proporcionar una interfaz común para DbContext y ObjectContext; ambos devolverán el ObjectContext subyacente.

Superior

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Vea también

Referencia

System.Data.Entity.Core.Objects (Espacio de nombres)