我正在将 MySql 成员资格提供程序与 .NET MVC 4 应用程序一起使用并完成所有操作根据{{3}}设置。
问题是,提供商将mysql_aspnet_users
PK 设置为UserID
表INT(11)
,而 MSSQL 提供程序使用UNIQUEIDENTIFIER
。
我需要将现有用户迁移到此数据库,我更希望在用户和成员资格表中保留Guid
作为主键。
有没有办法用 MySql成员资格提供程序 执行此操作?
或者我是否需要编写自己的 MySql成员资格提供程序 才能使用UUIDs
作为主键?
我已经查看过任何文档或“非hacky”方法,但到目前为止还没有任何运气。
答案 0 :(得分:1)
我认为您无法阻止使用自定义成员资格提供程序创建自定义成员资格用户类。像这个教程http://msdn.microsoft.com/en-us/library/ms366730%28v=VS.85%29.aspx这样的东西他们也使用GUID。您需要更改SQL abit,以便它适用于MySQL
答案 1 :(得分:0)
如果要充分利用存储空间,可以将guid存储为CHAR(16)二进制文件。 或varchar(36)如果确定。
http://mysqlbackupnet.codeplex.com/wikipage?title=Using%20MySQL%20With%20GUID%20or%20UUID
答案 2 :(得分:0)
在工作中,我们最终为.NET创建了自己的MySql成员资格提供程序,它被称为Dolphin https://github.com/film-skills/dolphin-net!它还包括角色提供程序,并允许您在配置中指定是使用GUID还是整数。它还处于早期阶段,并且在生产过程中没有经过全面测试,尽管这是一个开始!同样在NuGet http://www.nuget.org/packages/Dolphin/0.0.2
上