私のプログラムでは、SQLサーバでフルテキスト検索を使用して自分のプログラムで同時に検索してフィルタリングしたいときに100.000レコードのデータベースがあります。私が使用するライブラリの 名前は「Fissoft.EntityFramework.Fts」エンティティフレームワークのフルテキスト検索の使用でnullを返します
var text = FullTextSearchModelUtil.FreeText("searched text", true);
var query = db.Mainindustapp.Where(c => c.UnitName.Contains(text)).ToList();
return query.ToList();
ですが、私はそれが応答するSQLサーバーに直接全文検索コードを送信するとき。以下のコードは私が言ったことです:
Mainindustapp = db.Mainindustapp.SqlQuery
("SELECT * FROM[DB_industapp].[dbo].[Mainindustapps] WHERE FREETEXT(([UnitName], [Product]), @p0)", SearchString);
と私は、カタログがSQLサーバーで有効になっていることを述べる必要があります。
あなたが唯一のLINQ/EF経由 'UnitName'を探しますが、'されていますUnitName' ** OR ** ** Sql経由でクエリを実行するときの 'Product'。 [デモ](https://github.com/fissoft/Fissoft.EntityFramework.Fts/blob/master/README)で提案されているように、既に '.Where(c =>" * "。Contains(text)) .md)? – Filburt
あなたは 'query'で何かを得ていますか?そしてなぜあなたは 'query.ToList()'を返すのですか?あなたはtolist部分を省略することができ、単にクエリを渡すことができます。既にリスト形式です –