【问题标题】:How to keep membership and my data in the same database?如何将会员资格和我的数据保存在同一个数据库中?
【发布时间】:2013-03-18 23:42:15
【问题描述】:

我想将我的所有会员资格和数据存储在同一个数据库中。我首先创建了一个名为 MembershipDB 的数据库,并在其中使用aspnet_regsql.exe 添加了成员​​模式。

我正在使用 Internet ASP.NET MVC4 模板。所以这是连接字符串

 <connectionStrings>
  <remove name="DefaultConnection"/>
  <add name="DefaultConnection" 
     connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=MembershipDB.mdf;
     Integrated Security=True;" 
      providerName="System.Data.SqlClient" />
 </connectionStrings>

创建用户时,我在之前创建的 MembershipDB 数据库中看不到任何数据。相反,我看到另一个名为 MembershipDB.mdf 的数据库已创建并包含数据。

为什么我的数据库没有获取数据,而是正在创建另一个同名的数据库?只有在找不到同名的数据库时,代码优先才应该创建一个新数据库。

感谢您的帮助。

【问题讨论】:

    标签: sql-server asp.net-mvc asp.net-membership


    【解决方案1】:

    您的连接字符串指定 MembershipDBA.mdf 的初始目录(数据库)。将其更改为 MembershipDB。 .mdf 部分只是数据库数据部分的标准文件扩展名。除非您专门更改与文件有关的内容,否则无需引用它。

    【讨论】:

      【解决方案2】:
      1. 只需使用连接字符串中的数据库名称,不带 .mdf 扩展名。

      2. 在 web.config 的 Membership 部分设置 connectionStringName="MembershipDB"

      【讨论】:

        【解决方案3】:

        我认为最好的方法(我一直使用它)是观察和观察其他人在这些情况下的做法,并在他们之后重复。

        这是一篇关于如何同时使用 EF 和会员资格的文章(尽管是 EF 4.1,而不是 5)(如果我正确理解您的问题,这就是您所追求的:

        Using Entity Framework Code First and ASP.NET Membership Together

        这里是关于 SO(相同主题)的问题已成功回答(想知道在问你之前你怎么没有找到这个问题):

        Best database design approach to join complex data to ASP.Net Membership tables

        如果这有帮助,请告诉我。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-05-15
          • 2012-03-04
          相关资源
          最近更新 更多