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 Write

Write(ILoggingContext, LogLevel, LogRecordKind, string, Exception, ref CallerInfo)

Writes a custom log record with a description without parameters.

Declaration
void Write(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, Exception exception, ref CallerInfo callerInfo)
Parameters
Type Name Description
ILoggingContext context
LogLevel level

LogLevel of the record.

LogRecordKind recordKind

Kind of record.

string text

Text of the record.

Exception exception

The Exception associated with the record, or null.

CallerInfo callerInfo

Information about the caller source code.

Write(ILoggingContext, LogLevel, LogRecordKind, string, object[], Exception, ref CallerInfo)

Writes a custom log record with a description with an array of parameters.

Declaration
void Write(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, object[] args, Exception exception, ref CallerInfo callerInfo)
Parameters
Type Name Description
ILoggingContext context
LogLevel level

LogLevel of the record.

LogRecordKind recordKind

Kind of record.

string text

Text of the record.

object[] args

An array of parameters.

Exception exception

The Exception associated with the record, or null.

CallerInfo callerInfo

Information about the caller source code.

Write<T1>(ILoggingContext, LogLevel, LogRecordKind, string, T1, Exception, ref CallerInfo)

Writes a custom log record with 1 parameter.

Declaration
void Write<T1>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller souICustomActivityLoggingContextrce code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

Write<T1, T2>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, Exception, ref CallerInfo)

Writes a custom log record with 2 parameters.

Declaration
void Write<T1, T2>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

Write<T1, T2, T3>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, Exception, ref CallerInfo)

Writes a custom log record with 3 parameters.

Declaration
void Write<T1, T2, T3>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

Write<T1, T2, T3, T4>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, Exception, ref CallerInfo)

Writes a custom log record with 4 parameters.

Declaration
void Write<T1, T2, T3, T4>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

Write<T1, T2, T3, T4, T5>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, T5, Exception, ref CallerInfo)

Writes a custom log record with 5 parameters.

Declaration
void Write<T1, T2, T3, T4, T5>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

T5 arg5

Value of the 5-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

T5

Type of the 5-th parameter.

Write<T1, T2, T3, T4, T5, T6>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, T5, T6, Exception, ref CallerInfo)

Writes a custom log record with 6 parameters.

Declaration
void Write<T1, T2, T3, T4, T5, T6>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

T5 arg5

Value of the 5-th parameter.

T6 arg6

Value of the 6-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

T5

Type of the 5-th parameter.

T6

Type of the 6-th parameter.

Write<T1, T2, T3, T4, T5, T6, T7>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, T5, T6, T7, Exception, ref CallerInfo)

Writes a custom log record with 7 parameters.

Declaration
void Write<T1, T2, T3, T4, T5, T6, T7>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

T5 arg5

Value of the 5-th parameter.

T6 arg6

Value of the 6-th parameter.

T7 arg7

Value of the 7-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

T5

Type of the 5-th parameter.

T6

Type of the 6-th parameter.

T7

Type of the 7-th parameter.

Write<T1, T2, T3, T4, T5, T6, T7, T8>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, T5, T6, T7, T8, Exception, ref CallerInfo)

Writes a custom log record with 8 parameters.

Declaration
void Write<T1, T2, T3, T4, T5, T6, T7, T8>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

T5 arg5

Value of the 5-th parameter.

T6 arg6

Value of the 6-th parameter.

T7 arg7

Value of the 7-th parameter.

T8 arg8

Value of the 8-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

T5

Type of the 5-th parameter.

T6

Type of the 6-th parameter.

T7

Type of the 7-th parameter.

T8

Type of the 8-th parameter.

Write<T1, T2, T3, T4, T5, T6, T7, T8, T9>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, T5, T6, T7, T8, T9, Exception, ref CallerInfo)

Writes a custom log record with 9 parameters.

Declaration
void Write<T1, T2, T3, T4, T5, T6, T7, T8, T9>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

T5 arg5

Value of the 5-th parameter.

T6 arg6

Value of the 6-th parameter.

T7 arg7

Value of the 7-th parameter.

T8 arg8

Value of the 8-th parameter.

T9 arg9

Value of the 9-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

T5

Type of the 5-th parameter.

T6

Type of the 6-th parameter.

T7

Type of the 7-th parameter.

T8

Type of the 8-th parameter.

T9

Type of the 9-th parameter.

Write<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(ILoggingContext, LogLevel, LogRecordKind, string, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, Exception, ref CallerInfo)

Writes a custom log record with 10 parameters.

Declaration
void Write<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(ILoggingContext context, LogLevel level, LogRecordKind recordKind, string text, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, Exception exception, ref CallerInfo recordInfo)
Parameters
Type Name Description
ILoggingContext context

The context for which the message has to be written.

LogLevel level

The severity of the record (e.g. Info or Warning).

LogRecordKind recordKind

Kind of record.

string text

The text of the log record, including parameters (e.g. Opening {Path} file {ShareMode} sharing mode).

T1 arg1

Value of the 1-th parameter.

T2 arg2

Value of the 2-th parameter.

T3 arg3

Value of the 3-th parameter.

T4 arg4

Value of the 4-th parameter.

T5 arg5

Value of the 5-th parameter.

T6 arg6

Value of the 6-th parameter.

T7 arg7

Value of the 7-th parameter.

T8 arg8

Value of the 8-th parameter.

T9 arg9

Value of the 9-th parameter.

T10 arg10

Value of the 10-th parameter.

Exception exception

The Exception associated with the record, or null.

CallerInfo recordInfo

Information about the caller source code.

Type Parameters
Name Description
T1

Type of the 1-th parameter.

T2

Type of the 2-th parameter.

T3

Type of the 3-th parameter.

T4

Type of the 4-th parameter.

T5

Type of the 5-th parameter.

T6

Type of the 6-th parameter.

T7

Type of the 7-th parameter.

T8

Type of the 8-th parameter.

T9

Type of the 9-th parameter.

T10

Type of the 10-th parameter.