GetAllUsers信息(来自SimpleMembership给出的UserProfile和Membership Tables)和Entity Framework?

时间:2012-10-11 19:44:55

标签: c# asp.net-mvc entity-framework simplemembership

首先,我对.NET框架和所有内容都很陌生。我想要做的是为我的n-level MVC4应用程序构建我的管理部分,其中安全性由SimpleMembership处理。 (默认)

关于标准的MVC4模板,为了创建我的GetAllUsers方法,我决定使用EF反向工程代码第一个工具在我的域项目中创建我的成员资格实体(UserProfile,Membership,OAuthMembership和Roles)并生成我的上下文和我的DAL项目使用T4模板存储库。

我很惊讶会员表没有与UserProfile链接(正如你在架构中看到的那样),我很高兴知道为什么(?第一个问题)

membership_schema

在控制台“测试”应用程序中,(最终目标是创建一个gridview,我可以将Membership Table和UserProfile Table Infos链接在一起)我创建的方法是为了获取我的共享成员身份和UserProfile信息用户(我的服务项目尚未设置)。

这是正确的方法吗? (第二个问题)

    private static void GetAllUsers()
    {
        using (var MembershipRepository = new MembershipRepository())
        {
            var i = 1;
            foreach (var member in MembershipRepository.All)
            {
                Console.Write("{0}: {1} ", i, member.UserId);
                using (var UserProfileRepository = new UserProfileRepository())
                {
                    Console.WriteLine("{0}", UserProfileRepository.Find(member.UserId).UserName);
                }
                i += 1;
            }
        }
        WaitConsole();
    }

(注意:我还没有使用UnitOfWork和IoC,但我打算这样做)

非常感谢我知道自己是否走在正确的轨道上。

1 个答案:

答案 0 :(得分:0)

我真的建议您不要使用默认的成员资格架构。它的设计很差,你不需要大部分数据。而是制作自己的数据库并定义您自己的成员资格和角色提供者,因为它似乎适合您。

查看我之前的回答:https://stackoverflow.com/a/10067020/1241400