0
我制作了一个使用asp.net登录系统的ASP .net应用程序。我使用一个类来获取登录用户的一些细节,例如姓名,地址等。在用户可以更改他的详细信息的页面中,我有这些命令。如果我不使用page_load中的命令,地址在数据库中成功更改,但是如果我使用它们,数据库不会在地址中进行更改。这怎么可能?该profileC类使用ProfileBase类ASP .NET中的配置文件问题
protected void Page_Load(object sender, EventArgs e)
{
if (HttpContext.Current.User.Identity.IsAuthenticated)
{
classes.ProfileC pr = classes.ProfileC.GetProfileC(HttpContext.Current.User.Identity.Name);
TxtAddress.Text = pr.UserAddress;
}
}
protected void BtnAdd_Click(object sender, EventArgs e)
{
classes.ProfileC pr = classes.ProfileC.GetProfileC(HttpContext.Current.User.Identity.Name);
pr.UserAddress = TxtAddress.Text;
pr.Save();
}
}
你是说此之前不要忘页面加载然后调用pr.Save,它不会保存? – Josh
我想他是说如果他把代码从'Page_Load'中取出,他可以设置它。使用'Page_Load'中的代码,他不能 - 因此我的回答 - 需要'Page_Load'中的if!IsPostBack测试,因为它在保存操作发生之前重置了文本框文本... – bgs264