实体框架无法导入执行FTS的存储过程

时间:2013-07-09 11:59:35

标签: c# .net sql-server full-text-search entity-framework-5

我在启用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列信息。相反,模型浏览器显示以下消息:

  

选定的存储过程或函数不返回任何列

图片是:

我有一些此sproc的变体,它们在其他列上执行常规(而不是FTS)搜索 - 所有这些sprocs都是由EF 5正确导入的。只有上面的sproc正在使用全文搜索。我在SQL服务器管理器中运行上面的存储过程,并按预期返回行。然而,EF5设计师仍然无法检测到sproc返回的列。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

它因为你需要使用return关键字并返回你正在寻找的列我没有这样做的经验所以我不会发布谷歌的查询并希望它的工作,但我不这是你的问题只是google return column。