J'utilise Linq to Entities
et moi avons quelque chose comme la requête cerequête Linq clause where
context.Hotels
.Where(h => h.HotelType.Contains(s.HotelTypeId.ToString()))
.Select(hotel => new Model.Hotel
{
HotelId = hotel.HotelID,
HotelName = hotel.HotelName,
HotelFileName = hotel.HotelFileName,
StarRating = hotel.StarRating,
CountryName = hotel.Country.CountryName,
PlaceName = hotel.Place.PlaceName
})
J'utilise .ToString()
dans where
article que je sais est pas valable lorsque le travail avec Linq To Entities
. Mais en réalité la colonne "HotelType" a des valeurs séparées par des caractères de pipe comme 1 | 2 | 3..Maintenant je veux extraire seulement les hôtels qui ont un type 1. Comment est-ce possible? S'il vous plaît aider
Tout d'abord, vous devez modifier la structure de vos tables. Il n'est pas bon d'enregistrer '1 | 2 | 3' dans une cellule. Vous pouvez créer une autre table avec le nom 'HotelTypes' avec au moins deux colonnes:' Hotel_ID' et 'Type_ID'. Ensuite, utilisez la jointure à cette table. –
J'ai une très grande base de données, c'est assez difficile en ce moment. Je me demande si je peux le rendre possible –
Envisager de rendre le titre de la question plus spécifique. Celui-ci ne décrit vraiment pas votre problème du tout. –