Class Ref<T>
Implementation of an entity reference.
Inherited Members
Namespace: Kephas.Data
Assembly: Kephas.Data.dll
Syntax
public class Ref<T> : RefBase, IRef<T>, IRef, IIdentifiable where T : class, IIdentifiable
Type Parameters
| Name | Description |
|---|---|
| T | The referenced entity type. |
Constructors
| Improve this Doc View SourceRef(Object, String)
Initializes a new instance of the Ref<T> class.
Declaration
public Ref(object containerEntity, string refFieldName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Object | containerEntity | The entity containing the reference. |
| System.String | refFieldName | Name of the reference identifier property. |
Properties
| Improve this Doc View SourceEntity
Gets or sets the referenced entity.
Declaration
public virtual T Entity { get; set; }
Property Value
| Type | Description |
|---|---|
| T | The referenced entity. |
Remarks
The entity is not ensured to be set prior to calling GetAsync(Boolean, CancellationToken) due to performance reasons, but the actual behavior is left to the implementor.
EntityType
Gets the type of the referenced entity.
Declaration
public Type EntityType { get; }
Property Value
| Type | Description |
|---|---|
| System.Type | The type of the referenced entity. |
Id
Gets or sets the identifier of the referenced entity.
Declaration
public virtual object Id { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Object | The identifier of the referenced entity. |
IsEmpty
Gets a value indicating whether the reference is empty/not set.
Declaration
public virtual bool IsEmpty { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean | True if this reference is empty, false if not. |
Methods
| Improve this Doc View SourceGetAsync(Boolean, CancellationToken)
Gets the referenced entity asynchronously.
Declaration
public virtual Task<T> GetAsync(bool throwIfNotFound = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | throwIfNotFound | If true and the referenced entity is not found, an exception occurs. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token (optional). |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task<T> | A task promising the referenced entity. |
Explicit Interface Implementations
| Improve this Doc View SourceIIdentifiable.Id
Gets the identifier for this instance.
Declaration
object IIdentifiable.Id { get; }
Returns
| Type | Description |
|---|---|
| System.Object | The identifier. |
IRef.Entity
Gets or sets the referenced entity.
Declaration
object IRef.Entity { get; set; }
Returns
| Type | Description |
|---|---|
| System.Object | The referenced entity. |
Remarks
The entity is not ensured to be set prior to calling GetAsync(Boolean, CancellationToken) due to performance reasons, but the actual behavior is left to the implementor.
IRef.GetAsync(Boolean, CancellationToken)
Gets the referenced entity asynchronously.
Declaration
Task<object> IRef.GetAsync(bool throwIfNotFound, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | throwIfNotFound | If true and the referenced entity is not found, an exception occurs. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token (optional). |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task<System.Object> | A task promising the referenced entity. |