如何在SQL Server和WebAPI2中返回存储过程列表

本文关键字:返回 存储过程 列表 WebAPI2 SQL Server | 更新日期: 2023-09-27 18:02:10

下面的代码包含创建的过程。

USE [SAMPLE_DB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[GetAllGroups] 
AS
BEGIN
    SELECT [dbo].[QR_Groups].[Id], [dbo].[QR_Groups].[name], [dbo].[QR_Groups].[code]
    FROM [dbo].[QR_Groups]
END

我不能使用存储过程,因为我得到了错误消息:

不能隐式地将类型'int'转换为'System.Linq.IQueryable'

我不知道如何从WebAPI表返回数据。

Controller代码:

public IQueryable<QR_Group> GetAllGroups()
{
    return db.GetAllGroups();
}

编辑:

新的错误信息:

不能隐式转换类型"System.Data.Entity.Core.Objects"。ObjectResult→'System.Linq.IQueryable'。存在显式转换(您是否缺少强制类型转换?)

如何在SQL Server和WebAPI2中返回存储过程列表

我从未在EF中使用过存储过程,但我认为您想要的是这个

public IList<QR_Group> GetAllGroups() {
    return db.GetAllGroups().ToList();
}