DatabaseExtensionsInsertEntityTEntity Method

Insert the given entity using a stored procedure defined on the entity type

Definition

Namespace: EWSoftware.EntityFramework
Assembly: EWSoftware.EntityFramework (in EWSoftware.EntityFramework.dll) Version: 2025.11.12.0
public static int InsertEntity<TEntity>(
	this DbContext dataContext,
	TEntity entity
)

Parameters

dataContext  DbContext
The data context to use when inserting the entity
entity  TEntity
The entity to insert

Type Parameters

TEntity
The entity type to insert

Return Value

Int32
The number of rows affected assuming the stored procedure is not using SET NOCOUNT ON

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type DbContext. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

Remarks

The stored procedure name is determined by looking for the InsertEntityStoredProcedureAttribute on the entity type. The stored procedure must have parameters for each of the entity properties except those marked with the IgnoreAttribute for inserts. It should not return a value or a result set. Parameters related to the primary key (single column, integer only) or marked with the TimestampAttribute are defined as input/out parameters. All other parameters are input only.

If the connection is not in an open state, it is opened temporarily while updating the entity. If change tracking is enabled on the data context and the entity its state will be set to unchanged.

Example

C#
using var dataContext = new MyDbContext();

if(watchListItem.WatchID == 0)
    dataContext.InsertEntity(watchListItem);
else
    dataContext.UpdateEntity(watchListItem);

See Also