Procedimiento almacenado con consulta dinamica y que Linq to SQL vea el resultado igual que una tabla

28/11/2009 - 19:58 por Jose Cuervo | Informe spam
Estimados necesito que este procedimiento almacenado retorne la informacion
de la consulta (Select * from ...)

El mismo funciona bien , pero al utilizarlo con "linq to sql" me indica que
retorna un integer y yo necesito los registros resultantes de la consulta.

Si tienen alguna idea de como puedo lograrlo les agradezco. Utilizo
SQLExpress 2005.


Mi procedimiento almacenado:
-
@intSubCategoriaId int, @strLanguage varchar(5), @strPais nvarchar(50),
@intPageIndex INT, @strOrderBy nvarchar(1000)
declare @PageSize INT ;

set @PageSize;


declare @strSQL nvarchar(4000);


set @strSQL='SELECT * FROM

fn_vPProductsAndSpec_List('+str(@intSubCategoriaId)+','''+@strLanguage+''','''+@strPais+''')

where Fila between('+str((@intPageIndex-1)*@PageSize+1)+') and
'+str(@intPageIndex*@PageSize) +' order by '+ @strOrderBy ;


exec sp_ExecuteSQL @strSQL






*ES IMPORTANTE MENCIONAR QUE LA FUNCION FN_VPPRODUCTSANDSPEC RETORNA UNA
CANTIDAD DE COLUMNAS DINAMICAS DE ACUERDO A LA VARIABLE SUBCATEGORIAID
 

Leer las respuestas

#1 Carlos Sacristan
30/11/2009 - 13:58 | Informe spam
Por un lado, tu consulta parece más un problema de desarrollo (LINQ) que de
SQL Server.

Por otro lado, no es necesario usar sql dinámico para ejecutar la consulta
sobre la función fn_vPProductsAndSpec_List

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"Jose Cuervo" wrote in message
news:
Estimados necesito que este procedimiento almacenado retorne la
informacion de la consulta (Select * from ...)

El mismo funciona bien , pero al utilizarlo con "linq to sql" me indica
que retorna un integer y yo necesito los registros resultantes de la
consulta.

Si tienen alguna idea de como puedo lograrlo les agradezco. Utilizo
SQLExpress 2005.


Mi procedimiento almacenado:
-
@intSubCategoriaId int, @strLanguage varchar(5), @strPais nvarchar(50),
@intPageIndex INT, @strOrderBy nvarchar(1000)
declare @PageSize INT ;

set @PageSize;


declare @strSQL nvarchar(4000);


set @strSQL='SELECT * FROM

fn_vPProductsAndSpec_List('+str(@intSubCategoriaId)+','''+@strLanguage+''','''+@strPais+''')

where Fila between('+str((@intPageIndex-1)*@PageSize+1)+') and
'+str(@intPageIndex*@PageSize) +' order by '+ @strOrderBy ;


exec sp_ExecuteSQL @strSQL






*ES IMPORTANTE MENCIONAR QUE LA FUNCION FN_VPPRODUCTSANDSPEC RETORNA UNA
CANTIDAD DE COLUMNAS DINAMICAS DE ACUERDO A LA VARIABLE SUBCATEGORIAID












Preguntas similares