繁体   English   中英

使用简单的文本框更新用户个人资料信息

[英]Update a users profile information using simple textboxs

因此,我已经登录了系统,现在我不允许用户更新其信息。 我以为这段代码可以用,但是没有用,这里是:

    public partial class Account_Update : System.Web.UI.Page
 {
 protected void Page_Load(object sender, EventArgs e)
{

    MembershipUser usr = Membership.GetUser();
    if (usr.IsApproved == false)
    {
        Response.Redirect("~/Login.aspx");
    }
    var p = Profile.GetProfile(usr.UserName);
    /* Displays all current profile information once the page loads */
    FirstName.Text = p.fName;
    LastName.Text = p.lName;
    Address.Text = p.Address;
    Email.Text = usr.Email;
    Company.Text = p.Company;
}
/* Simple button to take you to the home screen */
protected void Button2_Click(object sender, EventArgs e)
{
    Response.Redirect("~/default.aspx");
}

protected void UpdateButton_Click(object sender, EventArgs e)
{
    MembershipUser usr = Membership.GetUser();
    var p = Profile.GetProfile(usr.UserName);
    /* Update all information that the user has changed */
    p.fName = FirstName.Text;
    p.Save();
    p.lName = LastName.Text;
    p.Save();
    p.Address = Address.Text;
    p.Save();
    usr.Email = Email.Text;
    Membership.UpdateUser(usr);
    p.Company = Company.Text;
    p.Save();
    Success.Text = "User Information has been updated";
    /* Redisplaying the updated user information */
    FirstName.Text = p.fName;
    LastName.Text = p.lName;
    Address.Text = p.Address;
    Email.Text = usr.Email;
    Company.Text = p.Company;
  }
}

问题似乎是,无论我将文本框中的文本更改为什么,都与原始文本框中的内容没有变化。 因此,如果最初用户的名字是Bob,当我按下更新按钮时我将其更改为Robert,则不会将其更改为Robert。 这似乎是一个简单的解决方法,但我有点迷失了。 因此,总的来说,主要问题是如何将用户信息更新为用户在文本框中输入的新文本。

!Ispostback放在页面加载中

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
    MembershipUser usr = Membership.GetUser();
    if (usr.IsApproved == false)
    {
        Response.Redirect("~/Login.aspx");
    }
    var p = Profile.GetProfile(usr.UserName);
    /* Displays all current profile information once the page loads */
    FirstName.Text = p.fName;
    LastName.Text = p.lName;
    Address.Text = p.Address;
      Email.Text = usr.Email;
      Company.Text = p.Company;
   }
}

如果您不使用它,则当信息进入服务器时,您将获得旧值。

干杯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM