Asp.net MVC +会员+代码优先+现有数据库

时间:2012-09-16 17:36:42

标签: sql asp.net-mvc entity-framework asp.net-membership

经过大量的研究和尝试后,我失败了,情况如下:

技术

  • Asp.Net MVC4
  • 实体框架代码优先
  • SQL Server 2008

我使用Code First创建了我的域类,例如:

public class Country{
   public int IdCountry {get;set;}
   public int NameCountry {get;set;}
}
public class Sex{
   public int IdSex {get;set;}
   public int NameSex{get;set;}
}

等...我有20个班级

我想要的只是:

使用Asp.Net Membership系统,并将其插入我的课程。我有一个名为UserProfile的域类

public class UserProfile{
   public int IdUserProfile {get;set;}
   public virtual Sex sex {get;set;}
   public virtual Country country {get;set;}
   public virtual ICollection<Photos> photos {get;set;}
   etc...
}

我希望能够将所有这些与通过Asp.Net Membership和AccountController注册的Asp.Net用户连接起来

我在stackoverflow,codeplex等中搜索。我找不到解决方案或者我不明白。

我希望有人在现实世界的应用程序中实现了这一点:)

ps:我正在开发一个“约会”网站

1 个答案:

答案 0 :(得分:3)

MVC 4中的AccountController已经依赖于SimepleMembership和其他WebMatrix位来支持OAuth和本地帐户的成员身份。

我的建议是首先删除为您的MVC 4项目在AccountModel.cs中定义的DbContext派生类,并将其替换为您自己的(编译器错误将告诉您删除类后必须更改的内容) 。

我还要从项目中删除SimpleMembershipInitializerAttribute,并确保在Application_Start期间执行初始化任务。过滤器有一些微妙的缺陷。当我有机会发布这个帖子时,我会用URL更新。