我想用一个linq语句将一个userName从我的数据库中拉出一个字符串。但是我不断收到错误。转换为Guid,但接收不能转换为int错误
这是我收到的错误:
无法隐式转换“字符串”到“廉政”
这是很奇怪的,因为我想将其转换为一个GUID,不一个int。
这里是代码:
string ticketChange = "The following change(s) have been made by " + db.Users.Where(u => u.UserId == new Guid["LoggedUserID"]).First().FullName + Environment.NewLine;
我收到了“loggedUserID”目前是一个字符串错误。
这里是我在用户登录时定义LoggedUserID的代码(我知道这不是执行此操作的最佳方式,我将在未来进行更改,但我需要尽快修复此问题)。它会拉出数据库中的用户ID并将其保存为字符串。
Session["LoggedUserID"] = v.UserId.ToString();
我也曾尝试:
Guid.NewGuid(["LoggedUserID"])
但对于NewGuid可以接收任意参数没有重载方法。
u.UserID是Guid。那么,在这种情况下,如何将字符串转换为Guid?
嗨克里斯。我更新了我的问题以包含LoggedUserID为 – djblois
然后,您需要执行类似'new Guid(Session [“LoggedUserID”])''的操作。然而,这是非常脆弱的,所以你应该把它包装在try-catch块中,并处理会话变量为空或者由于某种原因非标准的场景。 –