C# ASP.NET存储用户搜索结果
我对asp.net比较陌生,不知道是否有人能帮我解决当前的问题 我正在创建一个网站,允许人们通过数据库搜索不同的用户。此搜索可以通过不同的类别完成,即名字、姓氏等。当用户按下搜索按钮时,他们将获得一个具有唯一ID、名字和姓氏的网格视图。我已将唯一ID转换为指向用户详细信息页面的超链接。超链接存储唯一ID的文本,例如,1234将保存在超链接的末尾。我使用以下代码完成了此操作C# ASP.NET存储用户搜索结果,c#,asp.net,C#,Asp.net,我对asp.net比较陌生,不知道是否有人能帮我解决当前的问题 我正在创建一个网站,允许人们通过数据库搜索不同的用户。此搜索可以通过不同的类别完成,即名字、姓氏等。当用户按下搜索按钮时,他们将获得一个具有唯一ID、名字和姓氏的网格视图。我已将唯一ID转换为指向用户详细信息页面的超链接。超链接存储唯一ID的文本,例如,1234将保存在超链接的末尾。我使用以下代码完成了此操作 hl.NavigateUrl = "~/UserInfo.aspx?UniqueID="
hl.NavigateUrl = "~/UserInfo.aspx?UniqueID="
+ id.ToString();
当用户信息页面加载时,我使用这个唯一ID并使用SQLDataReader从数据库中查找基于这个唯一ID的所有信息,并在页面加载的相应文本框中显示它。文本框未启用
然后用户可以单击编辑按钮,文本框将被启用,然后他们可以更改此信息并更新数据库
我的问题是,当我这样做时,因为每次单击按钮时页面都必须重新加载,所以数据库中没有任何更改,因为它每次都返回原始区域的搜索信息
为了解决这个问题,我加入了if!Page.IsPostBack。这就解决了问题,每个人都可以在自己喜欢的时候更新数据库。但是,现在我遇到了一个新问题,因为当用户从“用户信息”页面导航到显示同一用户不同信息的选项卡时,如果他们返回,这些信息将丢失,因为该页面不再具有唯一ID,因此我的所有文本框都为空
我在网上查看过,尝试过将用户id放入会话,并查看了数据缓存,但是我发现的信息对我的情况没有帮助
有人知道我如何克服这个问题而不破坏我的更新数据库功能吗
非常感谢您的帮助 当数据库更新时,每个人都可以更新数据库,用什么?将唯一ID放在会话中您可以将ID保留在选项卡URL中吗?当用户深入查看其详细信息时,您是否在同一页面上?如果是,请将用户标识粘贴到ViewState中。或者正在开会。或者在一个隐藏的领域。不管你喜欢哪里,真的。如果在不同的页面上,请将用户ID放入会话中。如果会话在返回时超时,则检测会话是否为空,并将其发送到登录页面。或者从cookies中获取他们的登录详细信息。取决于你需要的安全程度。他们只是更改用户信息,例如,姓名、电子邮件地址等。我尝试将其放入会话中,但不确定如何再次获取它?我发现,如果您使用browser back键返回,它会工作,但是,如果您只需单击user details按钮,它就会清除页面。如何将用户ID添加到视图状态?对不起,我真的不太了解asp.net中的这类内容