C# 如何在Oracle上使用Guid进行查询
我正在用Entity Framework 5.0和Oracle 11g数据库开发一个ASP.NET应用程序。我还使用Oracle成员资格,我有C# 如何在Oracle上使用Guid进行查询,c#,mysql,asp.net,oracle,entity-framework,C#,Mysql,Asp.net,Oracle,Entity Framework,我正在用Entity Framework 5.0和Oracle 11g数据库开发一个ASP.NET应用程序。我还使用Oracle成员资格,我有ORA_ASPNET_USERS表存储用户信息 我的问题是,当我尝试按Guid(例如:{d19b8b68-cc4f-5449-9ba6-ac2573f34bcc})查询用户时,找不到结果,因为在Oracle数据库中,此Guid存储为“688B9BD14FCC49549BA6AC2573F34BCC” 我可以使用以下代码将Guid转换为Oracle RAW:
ORA_ASPNET_USERS
表存储用户信息
我的问题是,当我尝试按Guid(例如:{d19b8b68-cc4f-5449-9ba6-ac2573f34bcc})查询用户时,找不到结果,因为在Oracle数据库中,此Guid存储为“688B9BD14FCC49549BA6AC2573F34BCC”
我可以使用以下代码将Guid转换为Oracle RAW:
var id = BitConverter.ToString(guid.ToByteArray()).Replace("-", "");
但当我尝试使用EF查询用户时,我必须在我的业务对象中这样做:
var result = GetQueryable().Where(w => w.USERID == id).Single();
而USERID
是Guid
的一种类型,我不能用id(类型为string
)来查询它
当我不将guid转换为字节数组时,找不到结果
有人有同样的问题吗?我怎样才能解决它 看看这个谢谢你的回复!但在这一联系上没有解决办法。我仍然有这个问题。我必须通过ORACLE Raw上的.NET Guid查询用户,但我不能这样做。好的,链接是告诉您人们以前问过这个问题,但现在还没有回答。在这个链接中查看Oracle论坛,据说这个bug已经在ODAC 12c R3中修复。我下载并安装了它,但它没有解决我的问题我仍然有同样的问题,无法找到任何解决方案。有人能帮我解决我的问题吗?