BloggingSystem.Services.Controllers.UsersController.LogoutUser C# (CSharp) Method

LogoutUser() private method

private LogoutUser ( [ sessionKey ) : HttpResponseMessage
sessionKey [
return HttpResponseMessage
        public HttpResponseMessage LogoutUser(
            [ValueProvider(typeof(HeaderValueProviderFactory<string>))]string sessionKey)
        {
            HttpResponseMessage responseMessage = this.PerformOperation(() =>
            {
                UserValidator.ValidateSessionKey(sessionKey);

                var context = new BloggingSystemContext();
                using (context)
                {
                    var loggedUserEntity = context.Users.FirstOrDefault<User>(u => u.SessionKey == sessionKey);
                    if (loggedUserEntity == null)
                    {
                        throw new InvalidOperationException("Invalid user or pasword!");
                    }

                    loggedUserEntity.SessionKey = null;
                    context.SaveChanges();
                }

                return this.Request.CreateResponse(HttpStatusCode.OK);
            });

            return responseMessage;
        }
    }