azure-functions - 在 .NET 5.0 中向 signalR 组添加/删除用户

标签 azure-functions signalr .net-5 azure-signalr

以下代码在.netcoreapp3.1中一直有效,但将Http-triggered函数迁移到.NET 5.0后,它停止了:

public static class AddToGroup
    {
        [Function("addtogroup")]
        public static Task Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", Route = "addtogroup/{trnantId}/{userId}")]
            HttpRequestData req,
            string tenantId,
            string userId,
            [SignalR(HubName = "testhub")]
            IAsyncCollector<SignalRGroupAction> signalRGroupActions,
            FunctionContext executionContext)
        {
            return signalRGroupActions.AddAsync(new SignalRGroupAction
            {
                UserId = $"{tenantId}_{userId}",
                GroupName = tenantId,
                Action = GroupAction.Add
            });
        }
    }

有人可以就 .NET 5.0 中的这段代码提供指导吗?

最佳答案

正如编译器的错误所说:“...属性‘SignalROutput’在此声明类型上无效。它仅在‘方法、属性、索引器’声明上有效……”。您应该将 [SignalR(HubName = "testhub")] 属性放在方法上。这是一个sample .

您还可以在 .Net 5 sample 中看到返回类型 MyMessagesample for .NET class library function apps 中的先前 SignalRMessage 具有相同的结构| .

关于azure-functions - 在 .NET 5.0 中向 signalR 组添加/删除用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66791029/

相关文章:

c# - Azure Durable Function 不创建存储表实体

c# - log4net 从自定义 appender 访问上下文属性

redis - 使用 Redis 的 ASP.NET Core SignalR 横向扩展

c# - 如何使用相同的键向 StringValues 数组添加新值,从而修改我的 Uri?

c# - 我的 .NET Core 3.1 应用程序可以移植到 .NET 5 吗?

python - Azure功能没有实现部署时的触发器,但在本地工作

azure - 如何在 Visual Studio 中的不同端口上运行 Azure Function 应用程序

javascript - 使用 SignalR 从 C# 调用 JS 方法?

c# - 防止 SignalR ping

c# - .NET Core API REST C# List into List is null