好的,这是基本设置;用户登录我获得该用户 myid 的唯一ID,然后我尝试通过进入变量 myfriends <变量中显示的朋友表获取登录用户朋友的列表/ strong>请注意,我只选择了表示朋友的uniqueID的friendID列。然后我将myid与profileID进行比较,如果他们是朋友,那么该ID应匹配。问题是我在 myfriends 变量上使用。 tolist(),我似乎无法提取friendID(我正在使用tolist()因为.tolist()只提供了一个提取了多少记录的值,因为用户可以拥有多个朋友,但是tolist只计算要在 friendprofile 变量中进行比较的记录数量。如何从myfriends获取friendID值,以便我可以在friendprofile中对它进行比较,以便我可以向用户显示朋友个人资料?任何帮助都会很棒
[Authorize]
public ActionResult myprofile()
{
// Logged in User unique ID
int myid = Convert.ToInt32(User.Identity.Name);
// list of Logged in User friends by ID
var myfriends = sqlConnection.Query<friend>("Select friendID from friends where myid=@profileID",new { profileID = myid }).ToList();
// get friends profiles
var friendprofile = sqlConnection.Query<profile>("Select * from profiles where friendID=@profile",new { profile = myfriends }).ToList();
}
答案 0 :(得分:0)
您可以使用SQL IN Operator
执行此操作int myid = Convert.ToInt32(User.Identity.Name);
var friendprofile = sqlConnection.Query<profile>("Select * from profiles where friendID IN (Select friendID from friends where myid=@profile)",new { profile = myid }).ToList();