小编Eri*_*son的帖子

_AppStart.cshtml,PackageManager,WebMatrix

我将SimpleMembersihp添加到MVC4网站是一件简单的事情.不是这样.模板化代码(例如C#)非常适合支持它,但web.config主要是不可知的 - 没有配置任何特定安全机制的元素.我正在关注关于Pluralsight的Scott Allen的MVC4教程 - 将aspnet-Membership与EF混合.也许我错过了一些东西,但C#membership - 类没有与aspnet-Membership交互,他们正在做SimpleMembership.所以,我删除了aspnet-Membership,但现在我无法将PackageManager送到'update-database'.它抱怨"您必须调用WebSecurity.InitializeDatabaseConnection方法......".所以,我在调用中添加了一个_AppStart.cshtml文件,但PM似乎没有意识到._AppStart.cshtml:

@using WebMatrix.WebData;
@{
    WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", true);
}
Run Code Online (Sandbox Code Playgroud)

Web.config文件:

  <appSettings>
    <add key="enableSimpleMembership" value="true" />
    <add key="webpages:Version" value="2.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="PreserveLoginUrl" value="true" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>

   <roleManager enabled="true" defaultProvider="simple">
     <providers>
        <clear/>
        <add name="simple" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData" />
      </providers>
    </roleManager>


    <membership defaultProvider="simple">
      <providers>
        <clear/>
        <add name="simple" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData" />
      </providers>
    </membership
Run Code Online (Sandbox Code Playgroud)

Configuration.cs:

protected override void Seed(eManager.Web.Infrastructure.DepartmentDb context)
{
    context.Departments.AddOrUpdate(d => d.Name,
      new Department() { …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-4

5
推荐指数
1
解决办法
5531
查看次数

标签 统计

asp.net-mvc-4 ×1