实体框架4函数导入存储过程复杂类型返回无列

时间:2011-04-20 02:55:48

标签: sql entity-framework stored-procedures complextype

我已将SP导入实体实体数据模型并将其添加到函数导入。

我可以获取列信息并创建复杂类型GetErrorCheckJobs_Result

但是,在我向sp添加一个参数并尝试更新(刷新,删除和添加)函数import之后,它无法检索列信息。

它说:the selected stored procedure returns no columns

我在网上搜索了各种解决方案

SET NOCOUNT OFF

SET FMTONLY OFF

在我的SP开头,但仍然没有运气。

这是我的sp:

ALTER Procedure [dbo].[s_GetErrorCheckJobs]
                        @ErrorChecked bit

as
begin
 SET NOCOUNT OFF
 SET FMTONLY OFF


IF OBJECT_ID('tempdb..#TempColumns') IS NOT NULL DROP TABLE #TempColumns


create table #TempColumns 
(
        AssetID int
        ,JobReference varchar(30)
        ,DetailCode varchar(4)

        ,Lamp varchar(255)
        ,pLamp varchar(255)

        ,LuminaireType varchar(255)
        ,pLuminaireType varchar(255)

        ,ColumnStyle varchar(255)
        ,pColumnStyle varchar(255)

        ,ColumnHeight varchar(255)
        ,pColumnHeight varchar(255)

        ,ColumnOutreach varchar(255)
        ,pColumnOutreach varchar(255)
)


//Insert into #TempColumns 
//update #TempColumns 

select 
v.JobId
,v.JobReference
,v.ErrorChecked
,v.WASPAssetId
,v.StreetlightId
,v.DateReceived
,v.DateDueActual
,v.DateCompleted
,v.ActivityCodeIdActual
,v.CrewId
,v.JobCause
,v.Suburb
,v.Address
,v.Problem
,v.SpecialInstructions
,v.Notes

,t.Lamp
        ,t.pLamp

        ,t.LuminaireType 
        ,t.pLuminaireType

        ,t.ColumnStyle 
        ,t.pColumnStyle

        ,t.ColumnHeight 
        ,t.pColumnHeight

        ,t.ColumnOutreach 
        ,t.pColumnOutreach

         from v_errorcheck_jobs v
join #TempColumns t on t.jobreference = v.jobreference and t.assetid = v.waspassetid
where v.ErrorChecked = @ErrorChecked

end

任何帮助表示感谢,谢谢

2 个答案:

答案 0 :(得分:1)

重复sp并将其重命名 并再次完成整个过程

答案 1 :(得分:0)

有点晚了,但你必须在“真实”选择之前重新启用 NOCOUNT ,以便它可以使用它来创建投影列表。< / p>