Link Search Menu Expand Document


This attribute is used to set the value of the DbParameter.Direction property via a class property.


Below a sample code on how to use this attribute.

public class Person
    public int Id { get; set; }

    public string Name { get; set; }

    public double Assets { get; set; }

Fluent Mapping

Below is a sample code on how to use this attribute via FluentMapper.

    .PropertyValueAttributes(e => e.Assets, new ParameterDirectionAttribute(ParameterDirection.InputOutput));

Currently, all the properties with output direction (i.e.: Output, InputOutput, ReturnValue) are not being updated with the values from the database. This capability will soon to be added on the library.


You can retrieve the attribute via PropertyValueAttributeCache.

var attribute = PropertyValueAttributeCache
    .Get<Person>(e => e.Name)?
    .FirstOrDefault(e => e.GetType() == typeof(ParameterDirectionAttribute));

Or, via the PropertyValueAttributeMapper.

var attribute = PropertyValueAttributeMapper
    .Get<Person>(e => e.Name)?
    .FirstOrDefault(e => e.GetType() == typeof(ParameterDirectionAttribute));

We strongly suggest to always use the PropertyValueAttributeCache to maximize the performance.