从 ASP.NET Core 调用带有 List<Guid> 参数的 SQL Server 存储过程

问题描述 投票:0回答:0

我必须创建一个 T-SQL 存储过程,它将接受

List<Guid>
作为来自 ASP.NET Core 方法的参数。

这里是存储过程的 T-SQL 代码:

CREATE TYPE GuidList AS TABLE (Id UNIQUEIDENTIFIER);
GO

CREATE PROCEDURE [dbo].[GetSPValues]
    @User nvarchar(50),
    @GuIdList dbo.GuidList READONLY
AS
BEGIN
    SET NOCOUNT ON;

    SELETC a.id, a.text 
    FROM Table1 a 
    INNER JOIN @GuIdList g ON g.Id = a.Id
END;

现在我的 .NET Core 代码如下所示:

public async Task<List<MyClass>> GetUser(string userId, IList<Guid> userIdList)
{
    var userList =
        await _dbContext.Set<MyClass>()
            .FromSqlInterpolated($" GetSPValues {user.Id} {userAccessDatasetList}")
            .ToListAsync();

    return userList;
}

你能给我一个正确的解决方案来使用 Entity Framework 从 ASP.NET Core 方法中使用

List<Guid>
参数调用存储过程吗?

c# sql-server entity-framework .net-core stored-procedures
© www.soinside.com 2019 - 2024. All rights reserved.