Open sandboxFocus
  • TOC

Post­Sharp Documentation

Introduction

Deployment and Configuration

Adding Aspects to Code

Logging

Contracts

INotify­Property­Changed

Weak Event

XAML

Parent/Child, Visitor and Disposable

Undo/Redo

Caching

Multithreading

Developing Custom Aspects

Validating Architecture

Testing and Debugging

Miscellaneous

API Reference

Post­Sharp

Post­Sharp.​Aspects

Post­Sharp.​Aspects.​Advices

Post­Sharp.​Aspects.​Configuration

Post­Sharp.​Aspects.​Dependencies

Post­Sharp.​Aspects.​Internals

Post­Sharp.​Aspects.​Serialization

Post­Sharp.​Collections

Post­Sharp.​Constraints

Post­Sharp.​Extensibility

Post­Sharp.​Extensibility.​Build­Time­Logging

Post­Sharp.​Patterns

Post­Sharp.​Patterns.​Caching

Post­Sharp.​Patterns.​Caching.​Backends

Post­Sharp.​Patterns.​Caching.​Backends.​Azure

Post­Sharp.​Patterns.​Caching.​Backends.​Redis

Post­Sharp.​Patterns.​Caching.​Dependencies

Post­Sharp.​Patterns.​Caching.​Formatters

Post­Sharp.​Patterns.​Caching.​Implementation

Post­Sharp.​Patterns.​Caching.​Locking

Post­Sharp.​Patterns.​Caching.​Serializers

Post­Sharp.​Patterns.​Caching.​Value­Adapters

Post­Sharp.​Patterns.​Collections

Post­Sharp.​Patterns.​Collections.​Advices

Post­Sharp.​Patterns.​Contracts

Post­Sharp.​Patterns.​Diagnostics

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Asp­Net­Core

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Asp­Net­Framework

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Diagnostic­Source

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Http­Client

Post­Sharp.​Patterns.​Diagnostics.​Audit

Post­Sharp.​Patterns.​Diagnostics.​Backends

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Application­Insights

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Audit

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Common­Logging

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Console

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Event­Source

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Log4Net

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Microsoft

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Multiplexer

Post­Sharp.​Patterns.​Diagnostics.​Backends.​NLog

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Null

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Serilog

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Trace

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Trace­Source

Post­Sharp.​Patterns.​Diagnostics.​Contexts

Post­Sharp.​Patterns.​Diagnostics.​Correlation

Post­Sharp.​Patterns.​Diagnostics.​Custom

Post­Sharp.​Patterns.​Diagnostics.​Custom.​Messages

Post­Sharp.​Patterns.​Diagnostics.​Formatters

Post­Sharp.​Patterns.​Diagnostics.​Record­Builders

Post­Sharp.​Patterns.​Diagnostics.​Threading­Instrumentation

Post­Sharp.​Patterns.​Diagnostics.​Transactions

Post­Sharp.​Patterns.​Diagnostics.​Transactions.​Model

Post­Sharp.​Patterns.​Dynamic­Advising

Post­Sharp.​Patterns.​Formatters

Post­Sharp.​Patterns.​Model

Post­Sharp.​Patterns.​Model.​Controls

Post­Sharp.​Patterns.​Model.​Type­Adapters

Post­Sharp.​Patterns.​Recording

Post­Sharp.​Patterns.​Recording.​Operations

Post­Sharp.​Patterns.​Threading

Post­Sharp.​Patterns.​Threading.​Models

Post­Sharp.​Patterns.​Utilities

Post­Sharp.​Patterns.​Xaml

Post­Sharp.​Reflection

Post­Sharp.​Reflection.​Method­Body

Post­Sharp.​Serialization

  • Article

Method Recache

Recache<TReturn>(Func<TReturn>)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 0 parameter.

Declaration
public static TReturn Recache<TReturn>(Func<TReturn> method)
Parameters
Type Name Description
Func<TReturn> method

A delegate of the method to evaluate.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

Recache<TReturn, TParam1>(Func<TParam1, TReturn>, TParam1)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 1 parameter.

Declaration
public static TReturn Recache<TReturn, TParam1>(Func<TParam1, TReturn> method, TParam1 arg1)
Parameters
Type Name Description
Func<TParam1, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

Recache<TReturn, TParam1, TParam2>(Func<TParam1, TParam2, TReturn>, TParam1, TParam2)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 2 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2>(Func<TParam1, TParam2, TReturn> method, TParam1 arg1, TParam2 arg2)
Parameters
Type Name Description
Func<TParam1, TParam2, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

Recache<TReturn, TParam1, TParam2, TParam3>(Func<TParam1, TParam2, TParam3, TReturn>, TParam1, TParam2, TParam3)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 3 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3>(Func<TParam1, TParam2, TParam3, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4>(Func<TParam1, TParam2, TParam3, TParam4, TReturn>, TParam1, TParam2, TParam3, TParam4)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 4 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4>(Func<TParam1, TParam2, TParam3, TParam4, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 5 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4, TParam5 arg5)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TParam5, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

TParam5 arg5

Value of the 5-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

TParam5

Type of the 5-th parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 6 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4, TParam5 arg5, TParam6 arg6)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

TParam5 arg5

Value of the 5-th parameter.

TParam6 arg6

Value of the 6-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

TParam5

Type of the 5-th parameter.

TParam6

Type of the 6-th parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 7 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4, TParam5 arg5, TParam6 arg6, TParam7 arg7)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

TParam5 arg5

Value of the 5-th parameter.

TParam6 arg6

Value of the 6-th parameter.

TParam7 arg7

Value of the 7-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

TParam5

Type of the 5-th parameter.

TParam6

Type of the 6-th parameter.

TParam7

Type of the 7-th parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 8 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4, TParam5 arg5, TParam6 arg6, TParam7 arg7, TParam8 arg8)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

TParam5 arg5

Value of the 5-th parameter.

TParam6 arg6

Value of the 6-th parameter.

TParam7 arg7

Value of the 7-th parameter.

TParam8 arg8

Value of the 8-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

TParam5

Type of the 5-th parameter.

TParam6

Type of the 6-th parameter.

TParam7

Type of the 7-th parameter.

TParam8

Type of the 8-th parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 9 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4, TParam5 arg5, TParam6 arg6, TParam7 arg7, TParam8 arg8, TParam9 arg9)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

TParam5 arg5

Value of the 5-th parameter.

TParam6 arg6

Value of the 6-th parameter.

TParam7 arg7

Value of the 7-th parameter.

TParam8 arg8

Value of the 8-th parameter.

TParam9 arg9

Value of the 9-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

TParam5

Type of the 5-th parameter.

TParam6

Type of the 6-th parameter.

TParam7

Type of the 7-th parameter.

TParam8

Type of the 8-th parameter.

TParam9

Type of the 9-th parameter.

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10)

Evaluates a method, ignoring the currently cached value, and replaces the corresponding cache item with the new return value of the method. This overload is for methods with 10 parameters.

Declaration
public static TReturn Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10, TReturn> method, TParam1 arg1, TParam2 arg2, TParam3 arg3, TParam4 arg4, TParam5 arg5, TParam6 arg6, TParam7 arg7, TParam8 arg8, TParam9 arg9, TParam10 arg10)
Parameters
Type Name Description
Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10, TReturn> method

A delegate of the method to evaluate.

TParam1 arg1

Value of the first parameter.

TParam2 arg2

Value of the second parameter.

TParam3 arg3

Value of the third parameter.

TParam4 arg4

Value of the 4-th parameter.

TParam5 arg5

Value of the 5-th parameter.

TParam6 arg6

Value of the 6-th parameter.

TParam7 arg7

Value of the 7-th parameter.

TParam8 arg8

Value of the 8-th parameter.

TParam9 arg9

Value of the 9-th parameter.

TParam10 arg10

Value of the 10-th parameter.

Returns
Type Description
TReturn

The return value of method.

Type Parameters
Name Description
TReturn

The return type of the method.

TParam1

Type of the first parameter.

TParam2

Type of the second parameter.

TParam3

Type of the third parameter.

TParam4

Type of the 4-th parameter.

TParam5

Type of the 5-th parameter.

TParam6

Type of the 6-th parameter.

TParam7

Type of the 7-th parameter.

TParam8

Type of the 8-th parameter.

TParam9

Type of the 9-th parameter.

TParam10

Type of the 10-th parameter.

  • Navigation

In this article

Recache<TReturn>(Func<TReturn>)

Recache<TReturn, TParam1>(Func<TParam1, TReturn>, TParam1)

Recache<TReturn, TParam1, TParam2>(Func<TParam1, TParam2, TReturn>, TParam1, TParam2)

Recache<TReturn, TParam1, TParam2, TParam3>(Func<TParam1, TParam2, TParam3, TReturn>, TParam1, TParam2, TParam3)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4>(Func<TParam1, TParam2, TParam3, TParam4, TReturn>, TParam1, TParam2, TParam3, TParam4)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9)

Recache<TReturn, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10>(Func<TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10, TReturn>, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10)