为什么实体框架不能看到我的存储过程的列信息? [英] Why can't Entity Framework see my Stored Procedure's column information?

查看:109
本文介绍了为什么实体框架不能看到我的存储过程的列信息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下存储过程,当我尝试功能导入它说我的存储过程不返回列。我失踪了什么有什么建议么?



Proc:

  ALTER PROCEDURE [healthc]。[ev_kc_Products_Search ] 

@SearchString VARCHAR(1000)

AS
SET NOCOUNT ON

DECLARE @SQL VARCHAR(max),
@ SQL1 VARCHAR(max),
@Tag VARCHAR(5)

CREATE TABLE #T
(ID INT,
VendorName VARCHAR(255)
ItemName VARCHAR(255),
类型VARCHAR(2),
序列TINYINT



SET @SQL ='

INSERT #T

SELECT VendorID ID,
名称VendorName,
NULL ItemName,
''V''Type,
0序列
FROM tblVendors
WHERE'+ REPLACE(@ SQL1,@ Tag,'Name')+'

UNION ALL

BLAH BLAH BLAH '


EXEC(@SQL)


SELECT ID,VendorName,ItemName,Type FROM #T


解决方案

尝试将此行添加到存储过程的开头:

  SET FMTONLY OFF 

您可以在导入完成后将其删除。


I have the following stored procedure and when I attempt to Function Import it says my Stored Procedure returns no columns. What am I missing? Any Suggestions?

The Proc:

ALTER PROCEDURE [healthc].[ev_kc_Products_Search]
(
    @SearchString   VARCHAR(1000)
)
AS
SET NOCOUNT ON

    DECLARE @SQL    VARCHAR(max),
        @SQL1   VARCHAR(max),
        @Tag    VARCHAR(5)

    CREATE TABLE #T
    (   ID      INT,
        VendorName  VARCHAR(255),
        ItemName        VARCHAR(255),
        Type        VARCHAR(2),
        Sequence        TINYINT
    )


 SET @SQL = '

    INSERT  #T

    SELECT  VendorID ID,
        Name VendorName,
        NULL ItemName,
        ''V'' Type,
        0 Sequence
    FROM    tblVendors
    WHERE   '+REPLACE(@SQL1,@Tag,'Name')+'

    UNION ALL

    BLAH BLAH BLAH'


 EXEC(@SQL)


 SELECT ID, VendorName, ItemName, Type FROM #T

解决方案

Try adding this line to the beginning of your stored procedure:

SET FMTONLY OFF

You can remove this after you have finished importing.

这篇关于为什么实体框架不能看到我的存储过程的列信息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆