Freigeben über


DbSetMigrationsExtensions.AddOrUpdate<TEntity>-Methode (IDbSet<TEntity>, Expression<Func<TEntity, Object>>, TEntity[])

[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]

Fügt Entitäten beim Aufruf von SaveChanges nach einem benutzerdefinierten Identifikationsausdruck hinzu bzw. aktualisiert diese. Entspricht einem Upsert-Vorgang aus der Datenbankterminologie. Diese Methode kann beim Datenseeding unter Verwendung von Migrationen hilfreich sein.

Namespace:  System.Data.Entity.Migrations
Assembly:  EntityFramework (in EntityFramework.dll)

Syntax

'Declaration
<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() _
)
'Usage
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.

Typparameter

  • TEntity
    Der Typ der Entitäten, die hinzugefügt oder aktualisiert werden sollen.

Parameter

  • identifierExpression
    Typ: System.Linq.Expressions.Expression<Func<TEntity, Object>>
    Ein Ausdruck, der die Eigenschaften angibt, mit deren Hilfe bestimmt wird, ob ein Hinzufüge- oder Updatevorgang ausgeführt werden soll.
  • entities
    Typ: TEntity[]
    Die Entitäten, die hinzugefügt oder aktualisiert werden sollen.

Hinweis zur Verwendung

In Visual Basic und C# können Sie diese Methode als Instanzenmethode für ein beliebiges Objekt vom Typ IDbSet<TEntity> aufrufen. Bei Verwendung der Syntax für Instanzenmethoden lassen Sie den ersten Parameter aus. Weitere Informationen finden Sie unter https://msdn.microsoft.com/de-de/library/bb384936(v=vs.113) oder https://msdn.microsoft.com/de-de/library/bb383977(v=vs.113).

Hinweise

Wenn der set-Parameter eine benutzerdefinierte oder Pseudoimplementierung von IDbSet darstellt, versucht diese Methode, eine öffentliche Instanzmethode mit derselben Signatur wie diese Erweiterungsmethode zu finden und aufzurufen.

Siehe auch

Verweis

DbSetMigrationsExtensions Klasse

AddOrUpdate-Überladung

System.Data.Entity.Migrations-Namespace