Class PriceCalculationRequestItemBase<TProductIdentifier>
Represents a product in a price calculation request.
public abstract record PriceCalculationRequestItemBase<TProductIdentifier> : IPriceCalculationRequestItem<TProductIdentifier> where TProductIdentifier : ProductIdentifier
Type Parameters
TProductIdentifierProduct data identifier type.
- Inheritance
-
objectPriceCalculationRequestItemBase<TProductIdentifier>
- Implements
-
IPriceCalculationRequestItem<TProductIdentifier>
- Derived
- Extension Methods
Remarks
Inherit from this record if you need to change the TProductIdentifier generic type used in the calculation request item.
If you are using the default product identifier (ProductIdentifier), inherit from PriceCalculationRequestItem instead.
Constructors
PriceCalculationRequestItemBase()
protected PriceCalculationRequestItemBase()
PriceCalculationRequestItemBase(PriceCalculationRequestItemBase<TProductIdentifier>)
protected PriceCalculationRequestItemBase(PriceCalculationRequestItemBase<TProductIdentifier> original)
Parameters
originalPriceCalculationRequestItemBase<TProductIdentifier>
Properties
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
- Type
ProductIdentifier
Unique identifier for the associated product in the cart. Used to link calculation logic to a specific cart item.
public TProductIdentifier ProductIdentifier { get; init; }
Property Value
- TProductIdentifier
Quantity
The quantity of the product being purchased or processed.
public decimal Quantity { get; init; }
Property Value
- decimal
Methods
Equals(PriceCalculationRequestItemBase<TProductIdentifier>?)
public virtual bool Equals(PriceCalculationRequestItemBase<TProductIdentifier>? other)
Parameters
otherPriceCalculationRequestItemBase<TProductIdentifier>
Returns
- bool
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
- bool
GetHashCode()
public override int GetHashCode()
Returns
- int
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builderStringBuilder
Returns
- bool
ToString()
public override string ToString()
Returns
- string
Operators
operator ==(PriceCalculationRequestItemBase<TProductIdentifier>?, PriceCalculationRequestItemBase<TProductIdentifier>?)
public static bool operator ==(PriceCalculationRequestItemBase<TProductIdentifier>? left, PriceCalculationRequestItemBase<TProductIdentifier>? right)
Parameters
leftPriceCalculationRequestItemBase<TProductIdentifier>rightPriceCalculationRequestItemBase<TProductIdentifier>
Returns
- bool
operator !=(PriceCalculationRequestItemBase<TProductIdentifier>?, PriceCalculationRequestItemBase<TProductIdentifier>?)
public static bool operator !=(PriceCalculationRequestItemBase<TProductIdentifier>? left, PriceCalculationRequestItemBase<TProductIdentifier>? right)
Parameters
leftPriceCalculationRequestItemBase<TProductIdentifier>rightPriceCalculationRequestItemBase<TProductIdentifier>
Returns
- bool