diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketGlobalUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketGlobalUser.cs
index 525ae0b34..236e7d432 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketGlobalUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketGlobalUser.cs
@@ -1,3 +1,4 @@
+using System;
using System.Diagnostics;
using System.Linq;
using Model = Discord.API.User;
@@ -14,7 +15,7 @@ namespace Discord.WebSocket
internal override SocketPresence Presence { get; set; }
public override bool IsWebhook => false;
- internal override SocketGlobalUser GlobalUser => this;
+ internal override SocketGlobalUser GlobalUser { get => this; set => throw new NotImplementedException(); }
private readonly object _lockObj = new object();
private ushort _references;
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketGroupUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketGroupUser.cs
index fe19a41ec..d027bf0aa 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketGroupUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketGroupUser.cs
@@ -19,7 +19,7 @@ namespace Discord.WebSocket
///
public SocketGroupChannel Channel { get; }
///
- internal override SocketGlobalUser GlobalUser { get; }
+ internal override SocketGlobalUser GlobalUser { get; set; }
///
public override bool IsBot { get { return GlobalUser.IsBot; } internal set { GlobalUser.IsBot = value; } }
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketSelfUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketSelfUser.cs
index 7b11257a3..3bde1beab 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketSelfUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketSelfUser.cs
@@ -18,7 +18,7 @@ namespace Discord.WebSocket
public bool IsVerified { get; private set; }
///
public bool IsMfaEnabled { get; private set; }
- internal override SocketGlobalUser GlobalUser { get; }
+ internal override SocketGlobalUser GlobalUser { get; set; }
///
public override bool IsBot { get { return GlobalUser.IsBot; } internal set { GlobalUser.IsBot = value; } }
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs
index f7ed2e5f5..1945eebf8 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs
@@ -194,7 +194,7 @@ namespace Discord.WebSocket
string IGuildUser.GetGuildAvatarUrl(ImageFormat format, ushort size) => GuildUser.GetGuildAvatarUrl(format, size);
- internal override SocketGlobalUser GlobalUser => GuildUser.GlobalUser;
+ internal override SocketGlobalUser GlobalUser { get => GuildUser.GlobalUser; set => GuildUser.GlobalUser = value; }
internal override SocketPresence Presence { get => GuildUser.Presence; set => GuildUser.Presence = value; }
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketUnknownUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketUnknownUser.cs
index a15f7e747..99c47696a 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketUnknownUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketUnknownUser.cs
@@ -29,8 +29,7 @@ namespace Discord.WebSocket
internal override SocketPresence Presence { get { return new SocketPresence(UserStatus.Offline, null, null); } set { } }
///
/// This field is not supported for an unknown user.
- internal override SocketGlobalUser GlobalUser =>
- throw new NotSupportedException();
+ internal override SocketGlobalUser GlobalUser { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
internal SocketUnknownUser(DiscordSocketClient discord, ulong id)
: base(discord, id)
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs
index cf820b80e..7d63e4e36 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs
@@ -34,8 +34,7 @@ namespace Discord.WebSocket
public override bool IsWebhook => true;
///
internal override SocketPresence Presence { get { return new SocketPresence(UserStatus.Offline, null, null); } set { } }
- internal override SocketGlobalUser GlobalUser =>
- throw new NotSupportedException();
+ internal override SocketGlobalUser GlobalUser { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
internal SocketWebhookUser(SocketGuild guild, ulong id, ulong webhookId)
: base(guild.Discord, id)