DbSetMigrationsExtensions.AddOrUpdate<TEntity> メソッド (IDbSet<TEntity>, Expression<Func<TEntity, Object>>, TEntity[])
[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]
SaveChanges が呼び出されたときに、カスタム ID 式に基づいてエンティティを追加または更新します。 データベース用語の "upsert" 操作に相当します。 このメソッドは、Migrations を使用してデータをシードする場合に役立つことがあります。
名前空間: System.Data.Entity.Migrations
アセンブリ: EntityFramework (EntityFramework.dll 内)
構文
'宣言
<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() _
)
'使用
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.
型パラメーター
- TEntity
追加または更新するエンティティの型。
パラメーター
- set
型 : System.Data.Entity.IDbSet<TEntity>
エンティティが属するエンティティ セット。
- identifierExpression
型 : System.Linq.Expressions.Expression<Func<TEntity, Object>>
Add または Update のどちらの操作を実行するかを決定する際に使用されるプロパティを指定する式。
- entities
型 : TEntity[]
追加または更新するエンティティ。
使用上の注意
Visual Basic および Visual C# では、このメソッドを、IDbSet<TEntity> 型のオブジェクトのインスタンス メソッドとして呼び出すことができます。インスタンス メソッド構文を使用してこのメソッドを呼び出す場合は、最初のパラメーターを省略します。詳細については、「https://msdn.microsoft.com/ja-jp/library/bb384936(v=vs.113)」または「https://msdn.microsoft.com/ja-jp/library/bb383977(v=vs.113)」を参照してください。
解説
set パラメーターが IDbSet のカスタムまたはフェイク実装である場合、このメソッドは、この拡張メソッドと同じシグネチャを持つパブリック インスタンス メソッドを見つけて呼び出そうとします。