2013-01-10 52 views
1

我知道SimpleMembership會自動創建認證所需的表,但我寧願在某些時候運行sql腳本,而不是運行應用程序。是否有SimpleMembership腳本的下載頁面?SimpleMembership Sql腳本

+0

怎麼樣[包括它們與您的上下文(http://blog.spontaneouspublicity.com/including-asp-net-simple-membership-tables-as-part-你的實體框架模型)(然後你可以調用'update-database ... -script') –

回答

1

我發現了一個script on github

CREATE TABLE [dbo].[UserProfile] (
    [UserId] INT   IDENTITY (1, 1) NOT NULL, 
    [UserName] NVARCHAR (MAX) NULL, 
    PRIMARY KEY CLUSTERED ([UserId] ASC) 
); 

CREATE TABLE [dbo].[webpages_Membership] (
    [UserId]         INT   NOT NULL, 
    [CreateDate]        DATETIME  NULL, 
    [ConfirmationToken]      NVARCHAR (128) NULL, 
    [IsConfirmed]        BIT   DEFAULT ((0)) NULL, 
    [LastPasswordFailureDate]     DATETIME  NULL, 
    [PasswordFailuresSinceLastSuccess]  INT   DEFAULT ((0)) NOT NULL, 
    [Password]        NVARCHAR (128) NOT NULL, 
    [PasswordChangedDate]      DATETIME  NULL, 
    [PasswordSalt]       NVARCHAR (128) NOT NULL, 
    [PasswordVerificationToken]    NVARCHAR (128) NULL, 
    [PasswordVerificationTokenExpirationDate] DATETIME  NULL, 
    PRIMARY KEY CLUSTERED ([UserId] ASC) 
); 


CREATE TABLE [dbo].[webpages_OAuthMembership] (
    [Provider]  NVARCHAR (30) NOT NULL, 
    [ProviderUserId] NVARCHAR (100) NOT NULL, 
    [UserId]   INT   NOT NULL, 
    PRIMARY KEY CLUSTERED ([Provider] ASC, [ProviderUserId] ASC) 
); 

CREATE TABLE [dbo].[webpages_Roles] (
    [RoleId] INT   IDENTITY (1, 1) NOT NULL, 
    [RoleName] NVARCHAR (256) NOT NULL, 
    PRIMARY KEY CLUSTERED ([RoleId] ASC), 
    UNIQUE NONCLUSTERED ([RoleName] ASC) 
); 

CREATE TABLE [dbo].[webpages_UsersInRoles] (
    [UserId] INT NOT NULL, 
    [RoleId] INT NOT NULL, 
    PRIMARY KEY CLUSTERED ([UserId] ASC, [RoleId] ASC), 
    CONSTRAINT [fk_UserId] FOREIGN KEY ([UserId]) REFERENCES [dbo].[UserProfile] ([UserId]), 
    CONSTRAINT [fk_RoleId] FOREIGN KEY ([RoleId]) REFERENCES [dbo].[webpages_Roles] ([RoleId]) 
);