首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GUID但不是真正的GUID

GUID但不是真正的GUID
EN

Stack Overflow用户
提问于 2013-10-26 07:59:18
回答 1查看 447关注 0票数 2

标识管理器用户Guid,但是数据库类型仍然是字符串吗?如果您想使用不支持unique标识符类型的数据库,这显然是有意义的。但是如果我们需要使用GUID呢?

有什么方法可以将数据库类型修改为database吗?我成功地将我的表重命名为"User“,但同样的技巧在HasColumnType中不能使用GUID

我试过:

代码语言:javascript
复制
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
    public ApplicationDbContext()
        : base("DefaultConnection")
    {
    }

    protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);
        modelBuilder.Entity<IdentityUser>()
            .ToTable("Users", "dbo").Property(p => p.Id).HasColumnType("uniqueidentifier");
        modelBuilder.Entity<ApplicationUser>()
            .ToTable("Users", "dbo").Property(p => p.Id).HasColumnType("uniqueidentifier");
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-30 11:00:58

这可能不是您的问题的直接解决方案,但至少在隧道的末尾有光明: Asp.net标识的预览2.0.0-字母1 最近被宣布

新特性之一是用户和角色的主键类型的可扩展性:

在1.0中,用户和角色的PK类型是字符串。这意味着当使用实体框架将ASP.NET标识系统持久化到Server中时,我们使用的是nvarchar。围绕堆栈溢出的默认实现进行了大量讨论,基于传入的反馈,我们提供了一个扩展性挂钩,您可以在其中指定用户和角色表的PK。如果您正在迁移应用程序,并且应用程序存储的UserIds是GUID或ints,则这种扩展性挂钩特别有用。

您可以在公告帖子:宣布Microsoft.AspNet.Identity 2.0.0-字母1预览上阅读更多关于该发布以及如何获得它的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19604386

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档