Table of Contents

Class ThreadedEmailSummary

Namespace
MailFathom.Application.Emails.Threads
Assembly
MailFathom.Application.dll

One message of a conversation, as much of it as placing and naming the message in that conversation needs.

public sealed record ThreadedEmailSummary : IEquatable<ThreadedEmailSummary>
Inheritance
ThreadedEmailSummary
Implements
Inherited Members

Remarks

Narrower than EmailSummary deliberately, and the narrowing is the data-minimization control: a caller reading one message is shown the rest of the conversation so it can recognize what else is there, not so it can read the conversation through the back of a content call. The subject and the sender are what a person picks a message out of a list by, and the timestamp is what tells them when — nothing else about the other messages is published here.

The account and the folder are carried because they are what the read decides visibility on. A message in a folder an operator withheld from tools is outside every mailbox read, so it is outside the thread a tool publishes, and that decision belongs to the use case rather than to the query that produced these rows.

It still carries personal data — a subject and an address — and inherits the classification of the mail it describes.

Properties

AccountId

Gets the account whose mailbox the message was read from.

FolderAlias

Gets the folder alias the message was read from.

ParentStoredEmailId

Gets the message this one answers, or null when it answers none stored here.

SenderAddress

Gets the sender's address as the message wrote it, or null when it carried none usable.

SentAt

Gets when the message says it was sent, or null when no header carried a usable date.

StoredEmailId

Gets the stable local identity of the message, which a caller names it by to read its content.

Subject

Gets the subject, or null when the message carried none.