Table of Contents

Class PropertyPath

Namespace
The.Entities
Assembly
Instagile.dll

The path from an entity to some property, possibly passing through multiple relationships.

public sealed record PropertyPath : IColumn, IEquatable<PropertyPath>
Inheritance
PropertyPath
Implements
Inherited Members
Extension Methods

Remarks

See remarks on RelationshipPath if you think this shouldn't be called a path.

Constructors

PropertyPath(RelationshipPath, AttributeInfo?)

public PropertyPath(RelationshipPath relationshipPath, AttributeInfo? attribute)

Parameters

relationshipPath RelationshipPath
attribute AttributeInfo

Properties

Attribute

public AttributeInfo? Attribute { get; }

Property Value

AttributeInfo

RelationshipPath

public RelationshipPath RelationshipPath { get; }

Property Value

RelationshipPath

Methods

Append(PropertyInfo)

public PropertyPath Append(PropertyInfo property)

Parameters

property PropertyInfo

Returns

PropertyPath

Create(AttributeInfo)

public static PropertyPath Create(AttributeInfo attribute)

Parameters

attribute AttributeInfo

Returns

PropertyPath

Create(IEntityInfo)

public static PropertyPath Create(IEntityInfo type)

Parameters

type IEntityInfo

Returns

PropertyPath

Create(PropertyInfo)

public static PropertyPath Create(PropertyInfo property)

Parameters

property PropertyInfo

Returns

PropertyPath

Create(RelationshipInfo, params PropertyInfo[])

public static PropertyPath Create(RelationshipInfo firstRelationship, params PropertyInfo[] otherProperties)

Parameters

firstRelationship RelationshipInfo
otherProperties PropertyInfo[]

Returns

PropertyPath

DeserialisePath(IEntityInfo, string[])

public static PropertyPath DeserialisePath(IEntityInfo type, string[] path)

Parameters

type IEntityInfo
path string[]

Returns

PropertyPath

DeserialisePaths(IEntityInfo, string, ILogger)

public static IEnumerable<PropertyPath> DeserialisePaths(IEntityInfo type, string prefs, ILogger logger)

Parameters

type IEntityInfo
prefs string
logger ILogger

Returns

IEnumerable<PropertyPath>

GetHeader()

public string GetHeader()

Returns

string

GetLength()

public int GetLength()

Returns

int

GetMetadata()

public PropertyInfo GetMetadata()

Returns

PropertyInfo

GetPrefixes()

public IEnumerable<PropertyPath> GetPrefixes()

Returns

IEnumerable<PropertyPath>

GetTail()

public PropertyPath GetTail()

Returns

PropertyPath

GetText(EntityKernel)

public string GetText(EntityKernel row)

Parameters

row EntityKernel

Returns

string

GetValues(EntityKernel)

public object?[] GetValues(EntityKernel row)

Parameters

row EntityKernel

Returns

object[]

IsEmpty()

public bool IsEmpty()

Returns

bool

IsStrictPrefixOf(PropertyPath)

public bool IsStrictPrefixOf(PropertyPath other)

Parameters

other PropertyPath

Returns

bool

Prepend(RelationshipInfo)

public PropertyPath Prepend(RelationshipInfo r)

Parameters

r RelationshipInfo

Returns

PropertyPath

SerialisePath()

public string SerialisePath()

Returns

string

SerialisePaths(IEnumerable<PropertyPath>)

public static string SerialisePaths(IEnumerable<PropertyPath> prefs)

Parameters

prefs IEnumerable<PropertyPath>

Returns

string

ToString()

Returns a string that represents the current object.

public override string ToString()

Returns

string

A string that represents the current object.