コード例 #1
0
        // GET: Profile
        public ActionResult Index(Guid? id)
        {
            User user = new User();
            if (id == null)
            {
                Guid UserID = new Guid(User.Identity.Name);

                user = db.Users.Find(UserID);
                
            }
            else
            {
                user = db.Users.Find(id);
            }
            ProfileModel profile = new ProfileModel();
            profile.UserID = user.UserID;
            profile.Surname = user.Surname;
            profile.Name = user.Name;
            profile.Email = user.Email;
            profile.ProfilePicture = user.ProfilePicture;

            List<Article> article = db.Articles.Where(x => x.UserID == profile.UserID).ToList();
            int countShare = 0;
            foreach (var item in article)
            {
                List<Share> share = db.Shares.Where(x => x.ArticleID == item.ArticleID).ToList();
                countShare = countShare + share.Count();
            }
            profile.NumArticles = article.Count();
            profile.NumShared = countShare;
            return View(profile);

        }
コード例 #2
0
        // GET: Profile/Edit/5
        public ActionResult Edit(Guid? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            User user = db.Users.Find(id);
            if (user == null)
            {
                return HttpNotFound();
            }

            ProfileModel profile = new ProfileModel();
            profile.Name = user.Name;
            profile.Surname = user.Surname;
            profile.UserID = user.UserID;
            profile.ProfilePicture = user.ProfilePicture;

            return View(profile);
        }
コード例 #3
0
        public ActionResult Edit(ProfileModel profile)
        {
            if (ModelState.IsValid)
            {
                Guid UserID = new Guid(User.Identity.Name);
                if (UserID != profile.UserID)
                {
                    return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
                }
                User user = db.Users.Find(UserID);

                if (profile.PictureFile != null)
                {
                    string dirname = "~/Content/ProfilePicture";
 
                    var fileName = Path.GetFileName(profile.PictureFile.FileName);
                    int extPos = fileName.LastIndexOf('.');
                    string ext = fileName.Substring(extPos);
                    string newFileName = UserID.ToString() + ext;
                    var path = Path.Combine(Server.MapPath(dirname), (newFileName));
                    profile.PictureFile.SaveAs(path);
                    user.ProfilePicture = ext;
                }


                user.Name = profile.Name;
                user.Surname = profile.Surname;

                db.Entry(user).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            return View(profile);
        }