Я пытаюсь импортировать функцию SQL Server CONTAINS () в мою модель Entity Framework, чтобы я мог использовать ее в своих запросах LINQ.
Я добавил это в свой EDM:
<Function Name="FullTextSearch" ReturnType="Edm.Boolean">
<Parameter Name="Filter" Type="Edm.String" />
<DefiningExpression>
CONTAINS(*, Filter)
</DefiningExpression>
</Function>
Добавить создал мою заглушку метода:
[EdmFunction("MyModelNamespace", "FullTextSearch")]
public static bool FullTextSearch(string filter)
{
throw new NotSupportedException("This function is only for L2E query.");
}
Я пытаюсь вызвать функцию следующим образом:
from product in Products
where MyModel.FullTextSearch("FORMSOF(INFLECTIONAL, robe)")
select product
Возникает следующее исключение:
The query syntax is not valid. Near term '*'
Я понимаю, что функция I определенный не связан напрямую с запрашиваемым набором сущностей, так что это тоже может быть проблемой.
Есть ли способ это осуществить?