DbSetMigrationsExtensions.AddOrUpdate<TEntity> (Método) (IDbSet<TEntity>, Expression<Func<TEntity, Object>>, TEntity[])

[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].

Agrega o actualiza entidades según una expresión de identificación personalizada cuando se llama a SaveChanges. Equivalente a una operación "upsert" a partir de terminología de base de datos. Este método puede resultar útil cuando se inicializan datos mediante migraciones.

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

Sintaxis

'Declaración
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
<ExtensionAttribute> _
Public Shared Sub AddOrUpdate(Of TEntity As Class) ( _
    set As IDbSet(Of TEntity), _
    identifierExpression As Expression(Of Func(Of TEntity, Object)), _
    ParamArray entities As TEntity() _
)
'Uso
Dim set As IDbSet(Of TEntity)
Dim identifierExpression As Expression(Of Func(Of TEntity, Object))
Dim entities As TEntity()

set.AddOrUpdate(identifierExpression, _
    entities)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public static void AddOrUpdate<TEntity>(
    this IDbSet<TEntity> set,
    Expression<Func<TEntity, Object>> identifierExpression,
    params TEntity[] entities
)
where TEntity : class
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
[ExtensionAttribute]
public:
generic<typename TEntity>
where TEntity : ref class 
static void AddOrUpdate(
    IDbSet<TEntity>^ set, 
    Expression<Func<TEntity, Object^>^>^ identifierExpression, 
    ... array<TEntity>^ entities
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
static member AddOrUpdate : 
        set:IDbSet<'TEntity> * 
        identifierExpression:Expression<Func<'TEntity, Object>> * 
        entities:'TEntity[] -> unit   when 'TEntity : not struct
JScript does not support generic types and methods.

Parámetros de tipo

  • TEntity
    Tipo de entidades que se van a agregar o actualizar.

Parámetros

  • identifierExpression
    Tipo: System.Linq.Expressions.Expression<Func<TEntity, Object>>
    Expresión que especifica las propiedades que se deben usar a la hora de determinar si se debe efectuar una operación de agregar o de actualización.
  • entities
    Tipo: TEntity[]
    Entidades que se van a agregar o actualizar.

Nota sobre el uso

En Visual Basic y C#, se puede llamar a este método como a un método de instancia en cualquier objeto de tipo IDbSet<TEntity>. Cuando emplee la sintaxis del método de instancia para llamar a este método, omita el primer parámetro. Para obtener más información, vea https://msdn.microsoft.com/es-es/library/bb384936(v=vs.113) o https://msdn.microsoft.com/es-es/library/bb383977(v=vs.113).

Comentarios

Cuando el parámetro set es una implementación IDbSet personalizada o falsa, este método intentará localizar e invocar un método de instancia pública con la misma signatura que este método de extensión.

Vea también

Referencia

DbSetMigrationsExtensions Clase

AddOrUpdate (Sobrecarga)

System.Data.Entity.Migrations (Espacio de nombres)