我经常发现自己需要一些用户数据,例如用户名、配置文件属性以及来自数据库中其他表的其他一些数据,其中表通过 UserId(guid) 关联。让我解释一下:
aspnet_Users table:
UserId
username
...
Some table from which I retrive data:
Id
Post
DateTime
UserId
...
因此,对于我拉出的每个帖子(通常一次超过 20 个),我都需要每个帖子的用户名。调用类似的东西似乎很昂贵:
string username = Membership.GetUser(UserID).UserName;
对于每个项目。好像我正在对数据库进行 20 次额外调用。这样做的正确方法是什么?我是否应该在我的 Linq to Sql 方案中包含 aspnet_Users 表,然后加入以便我可以一次提取它?