我有asp.net的MVC 4项目中,尝试调用T-SQL,我需要选择一些行与并非所有列问题在asp.net mvc的SP
CREATE PROCEDURE [dbo].[SP_name]
@iSkip int, @iTake int
AS
BEGIN
SELECT [Column1], [Column2], [Column3] FROM [dbo].[Table] WITH(NOLOCK)
ORDER BY
[Column1] DESC
OFFSET @iSkip ROWS
FETCH NEXT @iTake ROWS ONLY
END
但是,当我尝试调用该SP从代码中我有以下错误
The data reader is incompatible with the specified 'Model.Table'. A member of the type, 'Column4', does not have a corresponding column in the data reader with the same name.
当我试图把这种对MS SQL工作室一切正常,没有任何人知道哪里是我的错?我该怎么做?
编辑:
这是库:
public IEnumerable<T> GetAllEntitiesWithParam(string procedureName, int param1, int param2) {
return _context.DbContext.Database.SqlQuery<T>("EXEC " + procedureName + " @param1, @param2", new SqlParameter("param1", param1), new SqlParameter("param2", param2));
}
这里是内部代码:
IEnumerable<Table> list = _myRepo.GetAllEntitiesWithParam("SP_name", par1, par2);
您将需要显示用于调用存储过程的代码。 – Paddy
@Paddy更新我的问题 – BorHunter
它说'Column4'不存在。更新你的查询并在选择中添加'[Column4]',并检查 – Bharadwaj