如何在空MVC 4项目模板中添加ASP.NET成员资格提供程序?

Md.*_*man 23 c# asp.net-mvc membership-provider asp.net-mvc-4

我是ASP.NET MVC4的新手.我正在创建一个空的MVC4项目模板,并尝试添加ASP.NET成员资格提供程序,但我不知道我该怎么做.我在谷歌搜索,但所有演示都使用Internet应用程序项目模板.

我知道这个问题并不好,但我已经花了两天时间.

请为此目的提供一些建议或教程.

更新

根据Nesim Razon的建议,我将表单身份验证部分从MVC4 Web应用程序(Internet应用程序模板)复制并粘贴到我的空项目中.但现在我得到一个异常要调用此方法,"Membership.Provider"属性必须是"ExtendedMembershipProvider"的实例.

[InitializeSimpleMembership]
public class HomeController : Controller
{

    public ActionResult Index()
    {
        WebSecurity.CreateUserAndAccount("Name", "Password"); // Exception is thrown from there.
        return View();
    }

}
Run Code Online (Sandbox Code Playgroud)

我还在Web.config文件中添加了以下指令:

<add key="enableSimpleMembership" value="true" /> 
Run Code Online (Sandbox Code Playgroud)

Jup*_*aol 31

安装它

您需要添加以下Nuget包:

添加引用

  • System.Transactions的

测试它

现在,为了测试它,将以下内容添加到web.config文件(下system.web):

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>
Run Code Online (Sandbox Code Playgroud)

添加以下连接字符串

  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-UnitTestQueries.UI-20121105001038;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-UnitTestQueries.UI-20121105001038.mdf" providerName="System.Data.SqlClient" />
  </connectionStrings>
Run Code Online (Sandbox Code Playgroud)

我所做的是从Internet模板复制控制器,模型,过滤器和视图,只需修改命名空间等内容,直到你启动并运行

这是结果(没有样式)

登录前

在此输入图像描述

注册

在此输入图像描述

登录

在此输入图像描述