oracle – 使用Fluent NHibernate和guid id
发布时间:2021-03-06 18:14:15 所属栏目:站长百科 来源:网络整理
导读:我们正在使用Fluent NHibernate 1.2,我们的主键是一个保存在nvarchar(32)列中的guid,与Oracle 11gr2一起使用. 我们怎样才能做到这一点? (进行自动转换……) 谢谢,随机程序员…… 更新: 忘了提一下,guid在没有短划线的情况下保存了…… 解决方法 更新: 您
我们正在使用Fluent NHibernate 1.2,我们的主键是一个保存在nvarchar(32)列中的guid,与Oracle 11gr2一起使用. 我们怎样才能做到这一点? (进行自动转换……) 谢谢,随机程序员…… 更新: 解决方法更新:您必须实现自己的IUserType来处理无破坏的Guids. 下面的详细信息现在与问题无关,但我会将其保留在此处供将来参考,供人们查找. 正常使用Guids 在您的实体中,Id应为Guid类型: public virtual Guid Id { get; private set; } 在你的ClassMap中,你应该像这样映射它: Id(x => x.Id) .Column("Id") .GeneratedBy.GuidComb(); 这将使用推荐的梳状算法生成新的guid. 要么 Id(x => x.Id) .Column("Id") .GeneratedBy.Guid(); 使用System.Guid创建新的Guids 要么 Id(x => x.Id) .Column("Id") .GeneratedBy.GuidNative(); 如果你想让数据库为你生成Guid. (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |