Comment effectuer une recherche dans l'Entity Framework 6?
J'ai une entité "POST" sur mon contexte et les éléments suivants:
String[] keywords = new String[] { "Car", "Yellow" };
Comment puis-je rechercher tous les articles dont le titre contient les 2 mots?
REMARQUE: les mots clés peuvent avoir de 1 à 4 mots.
L'entité post est le suivant:
public class Post {
public Int32 Id { get; set; }
public DateTime Created { get; set; }
public String Text { get; set; }
public String Title { get; set; }
public DateTime Updated { get; set; }
} //Post
Et voici mon SQL:
create table dbo.Posts
(
Id int identity not null
constraint PK_Posts_Id primary key clustered (Id),
Created datetime not null,
[Text] nvarchar (max) not null,
Title nvarchar (120) not null,
Updated datetime not null
);
J'ai été en regardant COMME en SQL, mais quel est l'équivalent dans l'Entity Framework?
Ai-je besoin Recherche Plein Texte? Et est-il disponible dans SQL Server 2012 Express?
Mise à JOUR
Suivantes haim770 suggestion, j'ai essayé le suivant:
Context context = new Context();
String[] words = new String[] { "Car" };
List<Post> posts = context.Posts.Where(x => words.Contains(x.Title).ToList();
Pas de postes ont été retournés avec la ... une idée?
Merci,
Miguel
- S'il vous plaît poster un exemple de votre contexte et de l'entité post.
Vous devez vous connecter pour publier un commentaire.
vous pouvez essayer cette
Et, si vous êtes à la recherche pour les titres contenant Tous mots dans la liste de mots clés, puis comme vous l'avez dit:
Quelque chose comme:
La ci-dessus sera question d'un SQL
LIKE
requête.Si vous voulez la recherche de texte intégral les capacités, tout d'abord, vous aurez à activer de manière explicite dans la base de données (vous pouvez avoir à l'installer si vous utilisez la version Express), puis d'utiliser un certain nombre de solutions de l'intégrer avec Entity Framework (probablement à l'aide de Entity Framdwork 6 'Intercepteurs').
SQL_Latin1_General_CP1_CI_AI
classement sur votreTitle
de la colonne sera de retour à la fois de "Leao" et "leão'.[Text] nvarchar (max) COLLATE SQL_Latin1_General_CP1_CI_AI NOT NULL
.