从字符串转换为唯一标识符时 ASP.NET 转换失败

Posted

技术标签:

【中文标题】从字符串转换为唯一标识符时 ASP.NET 转换失败【英文标题】:ASP.NET Conversion failed when converting from a character string to uniqueidentifier 【发布时间】:2010-02-19 00:33:36 【问题描述】:

我有一个表,它有一个主键 (UserID),它的类型是 UniqueIdentifier。 我试图在这个字段中插入一个值,但我一直收到错误。

我想获取当前用户的用户 ID 并将其插入到 user_Details 表中,但我一直收到此错误

从字符串转换为唯一标识符时转换失败

谁能帮帮我,谢谢

【问题讨论】:

【参考方案1】:

您已将参数放在字符串中,因此它不会被识别为参数。效果是您试图将字符串“@UserID”转换为 GUID,而不是使用参数中的值。

更改查询来自

"INSERT INTO  dbo.user_Details(UserId)VALUES ('@UserID')"

到:

"INSERT INTO  dbo.user_Details(UserId)VALUES (@UserID)"

【讨论】:

我的天啊...我在捆绑各种各样的东西...非常感谢老兄!! @c11ada:在您自己编写的代码中发现错误总是比较困难的。您倾向于按照您在编写时的想法来阅读它,而不是阅读实际存在的内容。 :) 像魅力一样工作,谢谢:D

以上是关于从字符串转换为唯一标识符时 ASP.NET 转换失败的主要内容,如果未能解决你的问题,请参考以下文章