Table of Contents

Class UserNoticeItemEntity

Namespace
Tharga.Team.MongoDB
Assembly
Tharga.Team.MongoDB.dll

One occurrence as it reaches one user, waiting in their stream until it is mailed.

public record UserNoticeItemEntity : EntityBase, ISupportInitialize, IEquatable<PersistableEntityBase>, IEntity<ObjectId>, IEquatable<EntityBase<ObjectId>>, IEquatable<EntityBase>, IEquatable<UserNoticeItemEntity>
Inheritance
PersistableEntityBase
EntityBase<ObjectId>
EntityBase
UserNoticeItemEntity
Implements
IEquatable<PersistableEntityBase>
IEntity<ObjectId>
IEquatable<EntityBase<ObjectId>>
IEquatable<EntityBase>
Inherited Members
EntityBase.ToString()
EntityBase.GetHashCode()
EntityBase.Equals(EntityBase<ObjectId>)
EntityBase.Equals(EntityBase)
EntityBase.<Clone>$()
EntityBase.EqualityContract
EntityBase<ObjectId>.Equals(PersistableEntityBase)
EntityBase<ObjectId>.Id
PersistableEntityBase.NeedsCleaning()
PersistableEntityBase.BeginInit()
PersistableEntityBase.EndInit()
PersistableEntityBase.CatchAll

Properties

Category

The mail category it is sent in.

public required string Category { get; init; }

Property Value

string

CompletedAt

When it was mailed or given up, in UTC; the retention period runs from here.

[BsonIgnoreIfNull]
public DateTime? CompletedAt { get; init; }

Property Value

DateTime?

CoveredSubjects

The subjects the mail that carried it covered, when its notice is composed from state; absent otherwise.

[BsonIgnoreIfNull]
public string[] CoveredSubjects { get; init; }

Property Value

string[]

Delivery

How it is delivered, stored by name.

[BsonRepresentation(BsonType.String)]
public UserNoticeDelivery Delivery { get; init; }

Property Value

UserNoticeDelivery

LinkPath

The site path of the thing, or null.

[BsonIgnoreIfNull]
public string LinkPath { get; init; }

Property Value

string

MailId

The id of the queued mail that carries it.

[BsonIgnoreIfNull]
public string MailId { get; init; }

Property Value

string

NoticeId

The id of the occurrence it came from.

public required string NoticeId { get; init; }

Property Value

string

NoticeKey

The notice's key.

public required string NoticeKey { get; init; }

Property Value

string

OccurrenceKey

What identifies the occurrence; unique together with the user.

public required string OccurrenceKey { get; init; }

Property Value

string

RaisedAt

When the occurrence was raised, in UTC.

public DateTime RaisedAt { get; init; }

Property Value

DateTime

Reason

Why it was given up.

[BsonIgnoreIfNull]
public string Reason { get; init; }

Property Value

string

Status

Where it stands, stored by name.

[BsonRepresentation(BsonType.String)]
public UserNoticeItemStatus Status { get; init; }

Property Value

UserNoticeItemStatus

Stream

The user's stream it waits in.

public required string Stream { get; init; }

Property Value

string

SubjectId

The id of the thing it is about.

public required string SubjectId { get; init; }

Property Value

string

SubjectText

How the thing is named to a reader, or null.

[BsonIgnoreIfNull]
public string SubjectText { get; init; }

Property Value

string

TeamKey

The team the occurrence belongs to.

public required string TeamKey { get; init; }

Property Value

string

UserKey

The key of the user it reaches.

public required string UserKey { get; init; }

Property Value

string

Values

The placeholder values, by name.

public Dictionary<string, string> Values { get; init; }

Property Value

Dictionary<string, string>