Estoy utilizando la Búsqueda de texto completo con LINQ en mi aplicación y, como esto no es compatible con LINQ, utilizo una solución de función de tabla de valor. La función se crea en SQL Server 2008.El parámetro de consulta de texto completo para Cadena de consulta de texto completo no es válido
Sorprendentemente, aparece el error "El parámetro de consulta de texto completo para Cadena de consulta de texto completo no es válido" cuando busco un texto simple, p. Ej. "Manager"
Utilicé SQL Server Profiler y descubrí que LINQ generaba el parámetro como nvarchar (4000) en lugar de nvarchar (250) que está en mi función.
La mayor sorpresa se produjo cuando cambié mi función de SQL Server, por lo que acepta el parámetro como nvarchar (4000) en lugar de nvarchar (250) y el problema está resuelto.
También estaba jugando para cambiar el parámetro a nvarchar (2000) y menos, pero esto tampoco funcionó.
¿Alguien sabe por qué esto se comporta de esta manera?
Actualizado el 18 de noviembre 2013 - Buenas noticias y malas noticias
Buenas noticias - Ahora estoy usando Entity Framework 6 para este ejemplo en particular y que ya no es necesario utilizar nvarchar (4000)
Malas noticias - Usted tiene que usar en su lugar nvarchar (max) :-(
La única cosa que viene a la mente es que usted tiene la caché estructura de la tabla de base de datos al diseñar dbml. Puede cambiarlo a nvarchar (max) por completo y reasignarlo en su aplicación. –