Win フォーム アプリケーションで全文検索を実行したいと考えています。
public static IEnumerable<DataRow> GetPartDataForFullTextSearch(string text1)
{
using (cEntity context = new cEntity())
{
var query = (
from i in context.tblparts
join s in context.tblpartstatus on i.partstatus
equals s.id
join l in context.tblwarehouse on i.partId
equals l.partId
join p in context.tblwarehouseplace on l.warehouseId
equals p.WhId
orderby i.partID
select new Part
{
PartNumber = i.partID,
PartName = i.partName,
OldPartNo = i.partIdOld,
Comment = i.comment,
Hbv = (long)i.HBVNr,
Status = (int)i.partstatus,
Building = p.building,
Room = p.room,
Shelf = p.shelf,
CaseOfPart = p.case
}).Distinct() as IEnumerable<DataRow>;
var results =
from matchingItem in query
where Regex.IsMatch(matchingItem.Field<string>("partName"), text1)
select matchingItem;
var list = results.ToList();
return list;
}
}
しかし、結果を受け取りません => ArgumentNullException
それが私が結果を受け取りたい方法です
private void tbOverviewFullSearch_TextChanged(object sender, EventArgs e)
{
dgPartOverview.DataSource =
DatabaseQueries.D_PartManagement
.GetPartDataForFullTextSearch(tbOverviewFullSearch.Text);
}
どうしたの?複数のフィールドをフィルタリングすることは可能ですか?