从字符串转换为唯一标识符时 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 转换失败的主要内容,如果未能解决你的问题,请参考以下文章
如何在 MVC .ASP NET 中将变量从字符串转换为 int [重复]
sQL数据库表的主键列设为标识,增量为1,下次插入数据时能不插入主键列吗
从 ASP.NET 调用 Oracle 存储过程时,无法将“System.Int32[]”类型的对象转换为“System.IConvertible”类型