# Class ReplyRefDto | EchoHub Documentation
Reference to the message a reply targets. is treated exactly like message content on the wire: transport-encrypted, and for end-to-end encrypted rooms it is room ciphertext the client must decrypt (the server truncates only plaintext snippets). Null on a when the original message no longer exists.

# Class ReplyRefDto

Namespace
  EchoHub.Core.DTOs

Assembly
  EchoHub.Core.dll

Reference to the message a reply targets. Content is treated exactly like message content on the wire: transport-encrypted, and for end-to-end encrypted rooms it is room ciphertext the client must decrypt (the server truncates only plaintext snippets). Null on a MessageDto when the original message no longer exists.

    public record ReplyRefDto : IEquatable<ReplyRefDto>

Inheritance
  object
  ReplyRefDto

Implements
  IEquatable<ReplyRefDto>

Inherited Members
  object.GetType()
  object.MemberwiseClone()
  object.Equals(object, object)
  object.ReferenceEquals(object, object)

## Constructors

### ReplyRefDto(ReplyRefDto)

    protected ReplyRefDto(ReplyRefDto original)

#### Parameters

`original` ReplyRefDto

### ReplyRefDto(Guid, string, string)

Reference to the message a reply targets. Content is treated exactly like message content on the wire: transport-encrypted, and for end-to-end encrypted rooms it is room ciphertext the client must decrypt (the server truncates only plaintext snippets). Null on a MessageDto when the original message no longer exists.

    public ReplyRefDto(Guid MessageId, string SenderUsername, string Content)

#### Parameters

`MessageId` Guid
`SenderUsername` string
`Content` string

## Properties

### Content

    public string Content { get; init; }

#### Property Value

string

### EqualityContract

    protected virtual Type EqualityContract { get; }

#### Property Value

Type

### MessageId

    public Guid MessageId { get; init; }

#### Property Value

Guid

### SenderUsername

    public string SenderUsername { get; init; }

#### Property Value

string

## Methods

### Deconstruct(out Guid, out string, out string)

    public void Deconstruct(out Guid MessageId, out string SenderUsername, out string Content)

#### Parameters

`MessageId` Guid
`SenderUsername` string
`Content` string

### Equals(ReplyRefDto?)

    public virtual bool Equals(ReplyRefDto? other)

#### Parameters

`other` ReplyRefDto

#### Returns

bool

### Equals(object?)

    public override bool Equals(object? obj)

#### Parameters

`obj` object

#### Returns

bool

### GetHashCode()

    public override int GetHashCode()

#### Returns

int

### PrintMembers(StringBuilder)

    protected virtual bool PrintMembers(StringBuilder builder)

#### Parameters

`builder` StringBuilder

#### Returns

bool

### ToString()

    public override string ToString()

#### Returns

string

## Operators

### operator ==(ReplyRefDto?, ReplyRefDto?)

    public static bool operator ==(ReplyRefDto? left, ReplyRefDto? right)

#### Parameters

`left` ReplyRefDto
`right` ReplyRefDto

#### Returns

bool

### operator !=(ReplyRefDto?, ReplyRefDto?)

    public static bool operator !=(ReplyRefDto? left, ReplyRefDto? right)

#### Parameters

`left` ReplyRefDto
`right` ReplyRefDto

#### Returns

bool