Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 通过EF6调用存储过程,其中该存储过程调用另一个过程以获得结果_Sql Server_C# 4.0_Stored Procedures_Visual Studio 2013_Entity Framework 6 - Fatal编程技术网

Sql server 通过EF6调用存储过程,其中该存储过程调用另一个过程以获得结果

Sql server 通过EF6调用存储过程,其中该存储过程调用另一个过程以获得结果,sql-server,c#-4.0,stored-procedures,visual-studio-2013,entity-framework-6,Sql Server,C# 4.0,Stored Procedures,Visual Studio 2013,Entity Framework 6,我试图将EntityFramework6引入一个完全依赖于存储过程的遗留系统 我有一个存储过程,它构建一个查询,然后将其传递给处理所有分页需求的第二个查询。问题是,当我将存储过程添加到模型中时,框架将返回类型检测为两列(varchar(4000)&varchar(100)),而不是执行查询时返回的实际数据集 当我尝试运行代码时,首先是实时调试器崩溃,w3wp.exe中出现一些未处理的win32异常 然后,当我取消调试时,我会看到错误消息 数据读取器与指定的“TFS_DevModel.spi_Qu

我试图将EntityFramework6引入一个完全依赖于存储过程的遗留系统

我有一个存储过程,它构建一个查询,然后将其传递给处理所有分页需求的第二个查询。问题是,当我将存储过程添加到模型中时,框架将返回类型检测为两列(
varchar(4000)
&
varchar(100)
),而不是执行查询时返回的实际数据集

当我尝试运行代码时,首先是实时调试器崩溃,w3wp.exe中出现一些未处理的win32异常

然后,当我取消调试时,我会看到错误消息

数据读取器与指定的“TFS_DevModel.spi_QualSearch_Result”不兼容。“provider_code”类型的成员在数据读取器中没有同名的对应列

存储过程如下所示:

declare @SQL varchar(5000),  
@SearchCriteria varchar(1000)

-- build the sorting expression

-- various checks to append criteria based on input parameters

SELECT @SQL = 'select column1, column2, etc from tables ' + 
  @SearchCriteria

execute PagingProc @SQL, @sort_expression, [paging parameters]
我试图定义一个复杂类型以适应分页过程实际返回的数据,但我得到了相同的错误


有人知道我想做的事是否可行吗?或者我应该研究重构存储过程吗?

尝试将w3wp.exe附加到IIS进程(工具>附加到进程>向下滚动到w3wp.exe,选择正确的IIS应用程序池并单击附加)。这似乎对我们有用

我不确定这是否有帮助,因为我在w3wp过程中遇到了一个异常。由于存储过程返回第二个SP的结果,我看不出这对实体模型的生成有什么帮助。无论如何,我们走了另一条路,谢谢您的回答。