将会话转换为指南
我正在为网站 CMS 构建用户管理部分。
用户有一个用户列表,然后单击编辑按钮,系统将 UserId 存储在会话中,并转到 editUser.aspx 页面,该页面将显示用户详细信息。
要获取用户详细信息,我需要将 UserId 会话转换为 Guid,以便获取用户详细信息。
我不断收到错误消息:
System.InvalidCastException:指定的强制转换无效。
Dim selectedUserId As Guid = CType(Session("strUserId"), Guid)
Dim mu As MembershipUser = Membership.GetUser(selectedUserId)
有谁知道这是否可能?
提前致谢。
I am building a User Management section to a website CMS.
The user has a list of users and then clicks the edit button, the system then stored the UserId in a session and goes to the editUser.aspx page which will show the users details.
To get the users details I need to convert the UserId session to a Guid so i can get user details.
I keep getting error message:
System.InvalidCastException: Specified cast is not valid.
Dim selectedUserId As Guid = CType(Session("strUserId"), Guid)
Dim mu As MembershipUser = Membership.GetUser(selectedUserId)
Does anyone know if this is possible?
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
请改用
Guid.Parse()
。您正在存储一个字符串,因此必须从字符串转换回 Guid。Use
Guid.Parse()
instead. You are storing a string, so must convert from a string back to a Guid.strUserId 是 GUID 值还是用户名?
如果它是 GUID 值,则无法对其进行转换,但可以使用 new GUID(strUserId) 创建新的 GUID 对象。
如果它是用户名,则最后一行 mu = Membership.GetUser(strUserId) 应该无需强制转换即可工作。
Is the strUserId a GUID value or a username?
If it is a GUID value, you cannot cast it but you can create a new GUID object using new GUID(strUserId).
If it is a username, your last line mu = Membership.GetUser(strUserId) should work without the cast.