在 1 个数据库调用中获取所有用户和配置文件字段
Get all users and profile fields in 1 database call
我们目前在我们的网站上有一个页面,可以获取我们所有的用户并列出他们。
var users = Membership.GetAllUsers();
此页面然后在视图中循环浏览每个用户时为每个用户调用配置文件。
foreach (MembershipUser user in Model)
{
ProfileBase pb = ProfileBase.Create(user.UserName, true);
//display fields
}
这使得页面加载非常缓慢,并且随着我们添加更多用户而变得更糟。现在超过 4000 个页面可能需要一两分钟才能加载。幸运的是它只是一个管理页面,但我仍然想让它更有效率。
有没有一种有效的方法可以在一次调用数据库中完成所有这些工作?
我最终只是重新编码了整个站点而不是使用 ProfileBase。我真的不能推荐任何人实施它。
我们目前在我们的网站上有一个页面,可以获取我们所有的用户并列出他们。
var users = Membership.GetAllUsers();
此页面然后在视图中循环浏览每个用户时为每个用户调用配置文件。
foreach (MembershipUser user in Model)
{
ProfileBase pb = ProfileBase.Create(user.UserName, true);
//display fields
}
这使得页面加载非常缓慢,并且随着我们添加更多用户而变得更糟。现在超过 4000 个页面可能需要一两分钟才能加载。幸运的是它只是一个管理页面,但我仍然想让它更有效率。
有没有一种有效的方法可以在一次调用数据库中完成所有这些工作?
我最终只是重新编码了整个站点而不是使用 ProfileBase。我真的不能推荐任何人实施它。