正在查找基于外键的表



我有这两个表以及它们之间的桥梁:

public class User
{
[Required]
public string Email { get; set; }
[Required]
public string FirstName { get; set; }
[Required]
public string LastName { get; set; }
public int Id { get; set; }
public ICollection<UserLocation> UserLocations { get; set; }
[Required]
public string Password { get; set; }
[Required]
public string Username { get; set; }
}
public class Location
{
[Required]
public int Id { get; set; }
[Required]
public string Name { get; set; }
public string Picture { get; set; }
public string PostCode { get; set; }
public string Region { get; set; }
public ICollection<UserLocation> UserLocations { get; set; }
}
public class UserLocation
{
public Location Location { get; set; }
public int LocationId { get; set; }
public User User { get; set; }
public int UserId { get; set; }
}

我需要创建一个方法,将搜索字段和用户id作为参数,返回所有重新分配给该用户id的位置,并搜索字符串是否包含在任何位置的道具中。

我在返回基于用户id的位置时遇到问题。

我试过_context.UserLocations.Include(ul=>ul.Location).Where(l=>l.UserId==userId)但由于我在尝试使用l.UserId时出现语法错误,所以这并没有起作用。我也尝试了另一种方法,_context.Locations.Include(l=>l.UserLocations),但遇到了同样的问题。

我需要找到一种方法来检索与用户相关的所有位置。之后可以使用Contains()方法容易地进行搜索。

试试这个

_context.UserLocations.Where(x => x.UserId == userId).Select(x => x.Location) 

相关内容

  • 没有找到相关文章

最新更新