Entity framework: ¿Cómo devolver una fila de una tabla con claves compuestas?

  public class UserBuilding
    {
        [Key, Column(Order = 0)]
        public int UserId { get; set; }
        [Key, Column(Order = 1)]
        public int BuildingId { get; set; }
        public int BuildingLevel { get; set; }
    }

Si quisiera devolver todos los diferentes edificios que pertenecen a un usuario, haría lo siguiente:

database.UserBuildings.Where(b => b.UserId == userId);

Mi pregunta es ¿qué sucede si deseo devolver un edificio específico de un usuario específico? ¿Cuál sería la forma más 'eficiente' de hacer esto? ¿Existe una forma mejor (como una función incorporada) que la siguiente:

database.UserBuildings.Where(b => b.UserId == userId && b.BuildingId == buildingId);

Respuestas a la pregunta(1)

Su respuesta a la pregunta