gpt4 book ai didi

asp.net-mvc - ASP.NET MVC : relationship between models and MembershipUsers

转载 作者:行者123 更新时间:2023-12-03 18:00:22 25 4
gpt4 key购买 nike

我有一个模型 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 ,但随后我应该手动将每个文档与其作者相关联。

什么是更好的解决方案?

最佳答案

不确定我是否理解正确,但您可以使用 MembershipUser 类作为用户模型。如果您想将用户引用到您的“文档”模型,您可以简单地向您的模型类添加一个属性“作者”,当您从数据库中获取模型时,您也可以获得用户。

Membership 类包含一些静态方法来列出所有用户、添加/删除用户等。

关于asp.net-mvc - ASP.NET MVC : relationship between models and MembershipUsers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1231895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com