Why can't Entity Framework see my Stored Procedure's column information?

后端 未结 10 1305
终归单人心
终归单人心 2020-12-02 14:54

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

10条回答
  •  攒了一身酷
    2020-12-02 15:12

    I had this issue, what I had to do was create a User-Defined Table Type and return that.

    CREATE TYPE T1 AS TABLE 
    (  ID      INT,
        VendorName  VARCHAR(255),
        ItemName        VARCHAR(255),
        Type        VARCHAR(2),
        Sequence        TINYINT
    );
    GO
    

    Your Stored Procedure will now look like this:

    ALTER PROCEDURE [healthc].[ev_kc_Products_Search]
    (
    @SearchString   VARCHAR(1000)
    )
    AS
    SET NOCOUNT ON
    
    DECLARE @SQL    VARCHAR(max),
        @SQL1   VARCHAR(max),
        @Tag    VARCHAR(5)
    
    @T [schema].T1
    
    SET @SQL = 'SELECT  VendorID ID,
        Name VendorName,
        NULL ItemName,
        ''V'' Type,
        0 Sequence
        FROM    tblVendors
        WHERE   '+REPLACE(@SQL1,@Tag,'Name')+'
        UNION ALL
        BLAH BLAH BLAH'
    
    INSERT INTO @T
    EXEC(@SQL)
    
    SELECT ID, VendorName, ItemName, Type FROM @T
    

提交回复
热议问题