public ContentResult FileUpload()
        {
            ControllerContext context = this.ControllerContext;

            //Get users current id and store image
            var userId = User.Identity.GetUserId();
            var virtualImagePath = System.Configuration.ConfigurationManager.AppSettings["VirtualImagePath"];
            var actualImagepath = Server.MapPath(virtualImagePath);

               // string path = AppDomain.CurrentDomain.BaseDirectory + "uploads/";

            string filename = Path.GetFileName(Request.Files[0].FileName);
            string directory = string.Concat(actualImagepath, "\\Users\\", userId, "\\profile\\");

            if (!Directory.Exists(directory)) Directory.CreateDirectory(directory);

            Request.Files[0].SaveAs(Path.Combine(directory, filename));

            //Add new image to database and set all existing in use to false.
            var virtualProfileImagePath = string.Concat(virtualImagePath, "/users/", userId, "/profile/", Request.Files[0].FileName);

            AspNetUserImagesProvider _aspNetUserImagesProvider = new AspNetUserImagesProvider();

            var newImage = new AspNetUserImages();
            newImage.UserImage = virtualProfileImagePath;
            newImage.UserId = userId;
                newImage.IsInUse = false;
            _aspNetUserImagesProvider.Add(newImage);

            ProfileUploadResult result = new ProfileUploadResult();
            result.ImageId = newImage.AspNetUserImageId;
            result.ImagePath = newImage.UserImage;

            var json = new JavaScriptSerializer().Serialize(result);

            return Content(json, "text/json");
        }