加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.NET MVC:模型与MembershipUsers之间的关系

发布时间:2020-12-16 07:38:47 所属栏目:asp.Net 来源:网络整理
导读:我有一个模型Docs,带有guid列author_id,它应该引用MembershipUser. 我正在使用标准的MembershipProvider(我只更改了数据库名称),当然我没有MembershipUsers的模型. 我可以在类Docs中轻松定义一些方法来获取Doc的MembershipUser和MembershipUser的所有Docs,但
我有一个模型Docs,带有guid列author_id,它应该引用MembershipUser.

我正在使用标准的MembershipProvider(我只更改了数据库名称),当然我没有MembershipUsers的模型.

我可以在类Docs中轻松定义一些方法来获取Doc的MembershipUser和MembershipUser的所有Docs,但有些事情很棘手(列出用户,显示每个用户有多少文档);此外,我觉得我以一种奇怪的方式使用MVC:在我看来,如果我有一个MembershipUsers模型会更容易……

我该如何实现这种关系?我应该为MembershipUsers实现一个模型吗?

谢谢

更新:我意识到我根本不清楚.

说我想列出我的所有用户和他们的文档.
一种方法是:

ViewModel model = new ViewModel()
{
    Users = from MembershipUser user in Membership.GetAllUsers(page,pagesize,out totalusers)
            select new UserWithDocs
            {
                User = user,Docs = context.Docs.Where(c => c.author_id == (Guid) user.ProviderUserKey)
            },UsersCount = totalusers
};

这有效,但为每个用户生成一个单独的查询.

我可以获取一组用户的guid,然后查询docs where author_id IN list_of_guids,但是我应该手动将每个doc与其作者关联.

什么是更好的解决方案?

解决方法

不确定我是否理解正确,但您可以使用MembershipUser类作为用户的模型.如果要将用户引用到“doc”模型,只需向模型类添加属性“Author”,当您从DB获取模型时,也可以获得用户.

Membership类包含一些静态方法,用于列出所有用户,添加/删除用户等.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读