我正在尝试初始化属性类,但由于某种原因,我正在努力解决结果。
我在 Visual Studio 2012 中创建了 MVC4“基本”项目模板。我在我的项目中创建了名称为 Filters 的文件夹并创建了类 InitializeSimpleMembership.cs。我有 Home 控制器和相关视图,最后我在 home 控制器类中调用 [InitializeSimpleMembership] 但没有结果。应用程序未生成所需的表。(注意:我之前创建过数据库)
我正在尝试用最少的代码初始化 SimpleMemberShip,以便我可以理解并使其随着它的增长而变得复杂。
在过滤器文件夹中
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Threading;
using System.Web.Mvc;
using WebMatrix.WebData;
using SimpleLogin_System_04.Models;
namespace SimpleLogin_System_04.Filters
{
public class InitializeSimpleMembership : ActionFilterAttribute
{
private class SimpleMembershipInitializer
{
public SimpleMembershipInitializer()
{
try
{
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
}
catch (Exception ex)
{
throw new InvalidOperationException("The ASP.NET Simple Membership database could not be initialized. For more information, ex);
}
}
}
}
}
家庭控制器
namespace SimpleLogin_System_04.Controllers
{
[InitializeSimpleMembership]
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
}
}
网络配置;连接字符串
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=dd3;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\dd3.mdf" />
</connectionStrings>