Class StoredProcedureBuilder<TEntity>
- Namespace
- Microsoft.EntityFrameworkCore.Metadata.Builders
- Assembly
- Microsoft.EntityFrameworkCore.Relational.dll
Provides a simple API for configuring a IMutableStoredProcedure that an entity type is mapped to.
public class StoredProcedureBuilder<TEntity> : StoredProcedureBuilder, IInfrastructure<EntityTypeBuilder>, IInfrastructure<IConventionStoredProcedureBuilder>, IInfrastructure<EntityTypeBuilder<TEntity>> where TEntity : class
Type Parameters
TEntityThe entity type being configured.
- Inheritance
-
StoredProcedureBuilder<TEntity>
- Implements
-
IInfrastructure<EntityTypeBuilder>IInfrastructure<IConventionStoredProcedureBuilder>IInfrastructure<EntityTypeBuilder<TEntity>>
- Inherited Members
Constructors
StoredProcedureBuilder(IMutableStoredProcedure, EntityTypeBuilder<TEntity>)
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
public StoredProcedureBuilder(IMutableStoredProcedure sproc, EntityTypeBuilder<TEntity> entityTypeBuilder)
Parameters
sprocIMutableStoredProcedureentityTypeBuilderEntityTypeBuilder<TEntity>
Methods
HasAnnotation(string, object?)
Adds or updates an annotation on the stored procedure. If an annotation with the key specified in
annotation already exists, its value will be updated.
public virtual StoredProcedureBuilder<TEntity> HasAnnotation(string annotation, object? value)
Parameters
annotationstringThe key of the annotation to be added or updated.
valueobjectThe value to be stored in the annotation.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasOriginalValueParameter(string)
Configures a new parameter that holds the original value if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasOriginalValueParameter(string propertyName)
Parameters
propertyNamestringThe property name.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasOriginalValueParameter(string, Action<StoredProcedureParameterBuilder>)
Configures a new parameter that holds the original value if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasOriginalValueParameter(string propertyName, Action<StoredProcedureParameterBuilder> buildAction)
Parameters
propertyNamestringThe parameter name.
buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasOriginalValueParameter<TProperty>(Expression<Func<TEntity, TProperty>>)
Configures a new parameter that holds the original value if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasOriginalValueParameter<TProperty>(Expression<Func<TEntity, TProperty>> propertyExpression)
Parameters
propertyExpressionExpression<Func<TEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TProperty
HasOriginalValueParameter<TProperty>(Expression<Func<TEntity, TProperty>>, Action<StoredProcedureParameterBuilder>)
Configures a new parameter that holds the original value if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasOriginalValueParameter<TProperty>(Expression<Func<TEntity, TProperty>> propertyExpression, Action<StoredProcedureParameterBuilder> buildAction)
Parameters
propertyExpressionExpression<Func<TEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TProperty
HasOriginalValueParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>>)
Configures a new parameter that holds the original value if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasOriginalValueParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>> propertyExpression) where TDerivedEntity : class, TEntity
Parameters
propertyExpressionExpression<Func<TDerivedEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TDerivedEntityTProperty
HasOriginalValueParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>>, Action<StoredProcedureParameterBuilder>)
Configures a new parameter that holds the original value if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasOriginalValueParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>> propertyExpression, Action<StoredProcedureParameterBuilder> buildAction) where TDerivedEntity : class, TEntity
Parameters
propertyExpressionExpression<Func<TDerivedEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TDerivedEntityTProperty
HasParameter(string)
Configures a new parameter if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasParameter(string propertyName)
Parameters
propertyNamestringThe property name.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasParameter(string, Action<StoredProcedureParameterBuilder>)
Configures a new parameter if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasParameter(string propertyName, Action<StoredProcedureParameterBuilder> buildAction)
Parameters
propertyNamestringThe parameter name.
buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasParameter<TProperty>(Expression<Func<TEntity, TProperty>>)
Configures a new parameter if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasParameter<TProperty>(Expression<Func<TEntity, TProperty>> propertyExpression)
Parameters
propertyExpressionExpression<Func<TEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TProperty
HasParameter<TProperty>(Expression<Func<TEntity, TProperty>>, Action<StoredProcedureParameterBuilder>)
Configures a new parameter if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasParameter<TProperty>(Expression<Func<TEntity, TProperty>> propertyExpression, Action<StoredProcedureParameterBuilder> buildAction)
Parameters
propertyExpressionExpression<Func<TEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TProperty
HasParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>>)
Configures a new parameter if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>> propertyExpression) where TDerivedEntity : class, TEntity
Parameters
propertyExpressionExpression<Func<TDerivedEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TDerivedEntityTProperty
HasParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>>, Action<StoredProcedureParameterBuilder>)
Configures a new parameter if no parameter mapped to the given property exists.
public virtual StoredProcedureBuilder<TEntity> HasParameter<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>> propertyExpression, Action<StoredProcedureParameterBuilder> buildAction) where TDerivedEntity : class, TEntity
Parameters
propertyExpressionExpression<Func<TDerivedEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TDerivedEntityTProperty
HasResultColumn(string)
Configures a new column of the result for this stored procedure. This is used for database generated columns.
public virtual StoredProcedureBuilder<TEntity> HasResultColumn(string propertyName)
Parameters
propertyNamestringThe property name.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasResultColumn(string, Action<StoredProcedureResultColumnBuilder>)
Configures a new column of the result for this stored procedure. This is used for database generated columns.
public virtual StoredProcedureBuilder<TEntity> HasResultColumn(string propertyName, Action<StoredProcedureResultColumnBuilder> buildAction)
Parameters
propertyNamestringThe property name.
buildActionAction<StoredProcedureResultColumnBuilder>An action that performs configuration of the column.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasResultColumn<TProperty>(Expression<Func<TEntity, TProperty>>)
Configures a new column of the result for this stored procedure. This is used for database generated columns.
public virtual StoredProcedureBuilder<TEntity> HasResultColumn<TProperty>(Expression<Func<TEntity, TProperty>> propertyExpression)
Parameters
propertyExpressionExpression<Func<TEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TProperty
HasResultColumn<TProperty>(Expression<Func<TEntity, TProperty>>, Action<StoredProcedureResultColumnBuilder>)
Configures a new column of the result for this stored procedure. This is used for database generated columns.
public virtual StoredProcedureBuilder<TEntity> HasResultColumn<TProperty>(Expression<Func<TEntity, TProperty>> propertyExpression, Action<StoredProcedureResultColumnBuilder> buildAction)
Parameters
propertyExpressionExpression<Func<TEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).buildActionAction<StoredProcedureResultColumnBuilder>An action that performs configuration of the column.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TProperty
HasResultColumn<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>>)
Configures a new column of the result for this stored procedure. This is used for database generated columns.
public virtual StoredProcedureBuilder<TEntity> HasResultColumn<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>> propertyExpression) where TDerivedEntity : class, TEntity
Parameters
propertyExpressionExpression<Func<TDerivedEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TDerivedEntityTProperty
HasResultColumn<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>>, Action<StoredProcedureResultColumnBuilder>)
Configures a new column of the result for this stored procedure. This is used for database generated columns.
public virtual StoredProcedureBuilder<TEntity> HasResultColumn<TDerivedEntity, TProperty>(Expression<Func<TDerivedEntity, TProperty>> propertyExpression, Action<StoredProcedureResultColumnBuilder> buildAction) where TDerivedEntity : class, TEntity
Parameters
propertyExpressionExpression<Func<TDerivedEntity, TProperty>>A lambda expression representing the property to be configured (
blog => blog.Url).buildActionAction<StoredProcedureResultColumnBuilder>An action that performs configuration of the column.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
Type Parameters
TDerivedEntityTProperty
HasRowsAffectedParameter()
Configures a new parameter that returns the rows affected if no such parameter exists.
public virtual StoredProcedureBuilder<TEntity> HasRowsAffectedParameter()
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasRowsAffectedParameter(Action<StoredProcedureParameterBuilder>)
Configures a new parameter that returns the rows affected if no such parameter exists.
public virtual StoredProcedureBuilder<TEntity> HasRowsAffectedParameter(Action<StoredProcedureParameterBuilder> buildAction)
Parameters
buildActionAction<StoredProcedureParameterBuilder>An action that performs configuration of the parameter.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasRowsAffectedResultColumn()
Configures a new column of the result that returns the rows affected for this stored procedure if no such column exists.
public virtual StoredProcedureBuilder<TEntity> HasRowsAffectedResultColumn()
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasRowsAffectedResultColumn(Action<StoredProcedureResultColumnBuilder>)
Configures a new column of the result that returns the rows affected for this stored procedure if no such column exists.
public virtual StoredProcedureBuilder<TEntity> HasRowsAffectedResultColumn(Action<StoredProcedureResultColumnBuilder> buildAction)
Parameters
buildActionAction<StoredProcedureResultColumnBuilder>An action that performs configuration of the column.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.
HasRowsAffectedReturnValue(bool)
Configures the result of this stored procedure to be the number of rows affected.
public virtual StoredProcedureBuilder<TEntity> HasRowsAffectedReturnValue(bool rowsAffectedReturned = true)
Parameters
rowsAffectedReturnedboolA value indicating whether this stored procedure returns the number of rows affected.
Returns
- StoredProcedureBuilder<TEntity>
The same builder instance so that multiple configuration calls can be chained.