首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ASP.NET MVC更新用户配置文件(实体框架)

ASP.NET MVC更新用户配置文件(实体框架)
EN

Stack Overflow用户
提问于 2019-05-21 04:52:28
回答 1查看 718关注 0票数 0

我是ASP.NET的初学者,一旦用户登录,我就会遇到添加“用户更新”功能的问题。

我试着向控制器页面添加代码,如下所示,但不起作用。如果有人能给我一些如何解决这些问题的建议,我将不胜感激。

我使用了实体框架,下面是我的代码

-控制器-

public class AccountController : Controller
    {
        TravelExpertsEntities db = new TravelExpertsEntities();
...


 public ActionResult Edit()
        {


            string username = User.Identity.Name;

            // Fetch the userprofile
            Customer user = db.Customers.Where(u => u.CustUserId.Equals(username)).FirstOrDefault();

            // Construct the viewmodel
            Customer model = new Customer();
            model.CustFirstName = user.CustFirstName;
            model.CustLastName = user.CustLastName;
            model.CustEmail = user.CustEmail;
           //...

            return View(model);


        }

        [HttpPost]
        public ActionResult Edit(Customer user)
        {
            using (TravelExpertsEntities db = new TravelExpertsEntities())
            {

                var usr = db.Customers.Where(u => u.CustUserId.Equals(user.CustUserId) && u.CustPassword.Equals(user.CustPassword)).FirstOrDefault();
                if (usr != null)
                {
                    // Update fields
                    user.CustFirstName = usr.CustFirstName;
                    user.CustLastName = usr.CustLastName;
                    user.CustEmail = usr.CustEmail;
                    //...
                    db.Entry(user).State = EntityState.Modified;

                    db.SaveChanges();
                }
                return RedirectToAction("Home", "Home");
            }

            return View(user);
        }
}

-MODEL-
public partial class Customer
    {
        [Key]
        public int CustomerId { get; set; }

        [DisplayName("First Name")]
        [Required(ErrorMessage = "First Name is required")]
        public string CustFirstName { get; set; }

        [DisplayName("Last Name")]
        [Required(ErrorMessage = "Last Name is required")]
        public string CustLastName { get; set; }

        [DisplayName("Address")]
        [Required(ErrorMessage = "Address is required")]
        public string CustAddress { get; set; }
     //...

    }
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56228034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档