Show / Hide Table of Contents

Class TypeWrapperBase<TWrapper, TWrapped, TOriginal>

Base class to wrap another type.

Inheritance
System.Object
TypeWrapperBase<TWrapper, TWrapped, TOriginal>
Namespace: MAT.Atlas.Api.Core
Assembly: MAT.Atlas.Api.Core.dll
Syntax
public abstract class TypeWrapperBase<TWrapper, TWrapped, TOriginal> : Object where TWrapper : TypeWrapperBase<TWrapper, TWrapped, TOriginal>, TWrapped, new()
    where TOriginal : class
Type Parameters
Name Description
TWrapper

The wrapper type.

TWrapped

The type when wrapped.

TOriginal

The original type that is being wrapped.

Constructors

TypeWrapperBase()

Declaration
protected TypeWrapperBase()

Properties

Instance

The original instance.

Declaration
public TOriginal Instance { get; set; }
Property Value
Type Description
TOriginal

Methods

FromWrapper(TWrapped)

Get original instance from wrapped instance.

Declaration
public static TOriginal FromWrapper(TWrapped wrappedInstance)
Parameters
Type Name Description
TWrapped wrappedInstance

Instance of wrapped type.

Returns
Type Description
TOriginal

The original instance.

ToWrapper(TOriginal, ref TWrapper)

Create/update wrapper and return wrapped instance from original instance.

Declaration
public static TWrapped ToWrapper(TOriginal instance, ref TWrapper wrapper)
Parameters
Type Name Description
TOriginal instance

The original instance.

TWrapper wrapper

The wrapper.

Returns
Type Description
TWrapped

Instance of wrapped type.

Remarks

A new wrapper is returned when original instance reference has changed to ensure standard object identity rules apply.

In This Article
Back to top Generated by DocFX