Reproduced.
Even the following produces the same result:
public class NorthwindFunctions
{
public static bool FullTextSearch(string theField, string toFind)
{
return true;
}
}
public class NorthwindFunctionMappings : FunctionMappingStore
{
public NorthwindFunctionMappings()
: base()
{
this.Add(new FunctionMapping(typeof(NorthwindFunctions), "FullTextSearch", 2, "FREETEXT({0}, {1})"));
}
}
metaData.CustomFunctionMappings = new NorthwindFunctionMappings();
var q = from c in metaData.Customers
where NorthwindFunctions.FullTextSearch("*", "XYZ")
select c;
Only when modifying the above Linq code to the wollowing will generate the FULLTEXT predicate in the output SQL
metaData.CustomFunctionMappings = new NorthwindFunctionMappings();
var q = from c in metaData.Customers
where NorthwindFunctions.FullTextSearch(**c.CustomerName**, "XYZ")
select c;
We will investigate it and get back to you.