public Task <Result> Save() { string connectionId = Context.ConnectionId; if (Context.Items.TryGetValue(connectionId, out object serverId)) { string name = Context.User.Identity.Name; string id = (string)serverId; return(_factorioServerManager.Save(id, name, "currently-running.zip")); } var error = Result.Failure(Constants.ServerIdErrorKey, $"The server id for the connection is invalid."); return(Task.FromResult(error)); }