我正在运行启用了 FTS 引擎的 MSSQL 2012。我有以下 sproc,它对 varchar 列执行全文搜索:
CREATE PROCEDURE [PROE].[SP_SearchLabOrdersByPatientNameAndDateRange]
@searchString varchar(160)
, @dtFrom datetime
, @dtTo datetime
AS
SET NOCOUNT ON
SELECT ord.Id, ord.FullName, ord.SomeOtherColumns
FROM
PROE.PatientLabOrders ord
WHERE
FREETEXT(ord.FullName, @searchString)
AND ord.OrderDateTime BETWEEN @dtFrom AND @dtTo
当我导入上述存储过程时,EDM 模型设计器没有显示任何 DTO 列信息。相反,模型浏览器显示以下消息:
The Selected Stored Procedure or Function returns no columns
图片是:
我有这个存储过程的一些变体,它们在其他列上执行常规(不是 FTS)搜索 - 所有这些存储过程都由 EF 5 正确导入。只有上面的存储过程使用全文搜索。我在 SQL Server 管理器中运行了上面的存储过程,它按预期返回了行。然而,EF5 设计器仍然无法检测存储过程返回的列。
我做错了什么?
最佳答案
因为您需要使用 return 关键字并返回您正在寻找的列我没有这样做的经验所以我不会发布 google 查询并希望它有效但我不这样做这只是你的问题谷歌返回列。
关于c# - Entity Framework 无法导入执行 FTS 的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17547664/