# Class UserProfileDto | EchoHub Documentation

# Class UserProfileDto

Namespace
  EchoHub.Core.DTOs

Assembly
  EchoHub.Core.dll

    public record UserProfileDto : IEquatable<UserProfileDto>

Inheritance
  object
  UserProfileDto

Implements
  IEquatable<UserProfileDto>

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

## Constructors

### UserProfileDto(UserProfileDto)

    protected UserProfileDto(UserProfileDto original)

#### Parameters

`original` UserProfileDto

### UserProfileDto(Guid, string, string?, string?, string?, string?, UserStatus, string?, ServerRole, DateTimeOffset, DateTimeOffset)

    public UserProfileDto(Guid Id, string Username, string? DisplayName, string? Bio, string? NicknameColor, string? AvatarAscii, UserStatus Status, string? StatusMessage, ServerRole Role, DateTimeOffset CreatedAt, DateTimeOffset LastSeenAt)

#### Parameters

`Id` Guid
`Username` string
`DisplayName` string
`Bio` string
`NicknameColor` string
`AvatarAscii` string
`Status` UserStatus
`StatusMessage` string
`Role` ServerRole
`CreatedAt` DateTimeOffset
`LastSeenAt` DateTimeOffset

## Properties

### AvatarAscii

    public string? AvatarAscii { get; init; }

#### Property Value

string

### Bio

    public string? Bio { get; init; }

#### Property Value

string

### CreatedAt

    public DateTimeOffset CreatedAt { get; init; }

#### Property Value

DateTimeOffset

### DisplayName

    public string? DisplayName { get; init; }

#### Property Value

string

### EqualityContract

    protected virtual Type EqualityContract { get; }

#### Property Value

Type

### Id

    public Guid Id { get; init; }

#### Property Value

Guid

### LastSeenAt

    public DateTimeOffset LastSeenAt { get; init; }

#### Property Value

DateTimeOffset

### NicknameColor

    public string? NicknameColor { get; init; }

#### Property Value

string

### Role

    public ServerRole Role { get; init; }

#### Property Value

ServerRole

### Status

    public UserStatus Status { get; init; }

#### Property Value

UserStatus

### StatusMessage

    public string? StatusMessage { get; init; }

#### Property Value

string

### Username

    public string Username { get; init; }

#### Property Value

string

## Methods

### Deconstruct(out Guid, out string, out string?, out string?, out string?, out string?, out UserStatus, out string?, out ServerRole, out DateTimeOffset, out DateTimeOffset)

    public void Deconstruct(out Guid Id, out string Username, out string? DisplayName, out string? Bio, out string? NicknameColor, out string? AvatarAscii, out UserStatus Status, out string? StatusMessage, out ServerRole Role, out DateTimeOffset CreatedAt, out DateTimeOffset LastSeenAt)

#### Parameters

`Id` Guid
`Username` string
`DisplayName` string
`Bio` string
`NicknameColor` string
`AvatarAscii` string
`Status` UserStatus
`StatusMessage` string
`Role` ServerRole
`CreatedAt` DateTimeOffset
`LastSeenAt` DateTimeOffset

### Equals(UserProfileDto?)

    public virtual bool Equals(UserProfileDto? other)

#### Parameters

`other` UserProfileDto

#### 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 ==(UserProfileDto?, UserProfileDto?)

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

#### Parameters

`left` UserProfileDto
`right` UserProfileDto

#### Returns

bool

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

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

#### Parameters

`left` UserProfileDto
`right` UserProfileDto

#### Returns

bool