一个关于User.Identity.Name的问题

nobody_me 2010-10-22 10:06:20
我要实现一个管理系统,登录者每一个操作要将登录者的名字记录到数据库里,记录时使用了User.Identity.Name.ToString()这个函数,大部分情况下数据库里记录是正确的,不过有少数几笔记录的却是System.Web.Security.FormsIdentity,而不是登录者的名字,请教大家这是什么原因?
...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayanly 2010-10-22
  • 打赏
  • 举报
回复
客户端设置都一样吗?例如都在域里?个人觉得不应该是登陆超时造成的,也没用到session,cookies。User.Identity.ToString()这个值超时会因超时而变没吗?好像不太可能。
nobody_me 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 cpp2017 的回复:]
是不是你的代码之前改过,没改之前直接使用的User.Identity.ToString()
[/Quote]
不是,数据库里的有System.Web.Security.FormsIdentity数据并不都是在末尾,是穿插在其中的,我是怀疑登录超时后才变城System.Web.Security.FormsIdentity的。
cpp2017 2010-10-22
  • 打赏
  • 举报
回复
是不是你的代码之前改过,没改之前直接使用的User.Identity.ToString()
nobody_me 2010-10-22
  • 打赏
  • 举报
回复
代码如下
sCmd.Parameters["@Record"].Value = User.Identity.Name.ToString();
查看数据库表里的数据发现有少部分数据记录的是System.Web.Security.FormsIdentity
mayanly 2010-10-22
  • 打赏
  • 举报
回复
贴出代码看一看,应该跟客户端设置有关。
vip__888 2010-10-22
  • 打赏
  • 举报
回复
没有重载呗。

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧