将简单成员资格提供程序功能移至类库项目

时间:2013-05-05 12:29:35

标签: asp.net-mvc-4 ef-code-first simplemembership

我正在尝试将DbSet移动到将用于数据库操作的类库项目。

我一直在关注Code First / SimpleMembershipProfider项目的this教程。我已经通过类lib项目为数据库填充了新表等。

但我错过了您可以在this图片上看到的网页表格。

这是我的datacontext类:

public class DataContext : DbContext
{
    public DataContext() : base("DefaultConnection")
    {
    }

    public DbSet<Orders> Orders { get; set; }
    public DbSet<Appointment> Appointment { get; set; }
    public DbSet<UserProfile> UserProfile { get; set; }
}

我为每个DbSet创建了一个cs文件。我从connectionString复制了web.config并将其放在类lib项目的app.config中。这就是app.config文件的样子:

<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=.;Initial Catalog=aspnet-CodeFirst-test;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
  </connectionStrings>

  <system.web>
    <roleManager enabled="true" defaultProvider="SimpleRoleProvider">
      <providers>
        <clear />
        <add name="SimpleRoleProvider" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData" />
      </providers>
    </roleManager>
    <membership defaultProvider="SimpleMembershipProvider">
      <providers>
        <clear />
        <add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData"  />
      </providers>
    </membership>
  </system.web>

  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="v11.0" />
      </parameters>
    </defaultConnectionFactory>
  </entityFramework>
</configuration>

我不确定如何处理我的webproject中的Filters文件夹(其中包含类InitializeSimpleMembershipAttribute)。

有人能告诉我如何在数据库中创建webpages_吗?以及如何将websecurity等移动到类lib项目中?

提前致谢!

1 个答案:

答案 0 :(得分:1)

如果您试图控制Asp.net简单成员资格表和/或包含Asp.net简单成员资格表作为您的实体框架的一部分为您的项目实体框架建模,您需要采取许多步骤。我会一步一步地解释它们,但这需要太长时间,所以我只会为你提供参考资料。

Including Asp.net Simple Membership Tables as Part of Your Entity Framework Model

Seed Users and Roles with MVC 4, SimpleMembershipProvider, SimpleRoleProvider, Entity Framework 5 CodeFirst, and Custom User Properties

Building Applications with ASP.NET MVC 4. You can use trial version on pluralsight

如果您有任何具体问题,我很乐意回答。