小编ger*_*b0n的帖子

LINQ Lambda,分组列表

我找到正确的语法来完成以下操作时遇到了一些麻烦:

是否可以使用LINQ(Lambda Expression)到.GroupBy数据,而不是使用通常的.Sum()或.Count(),我希望结果数据是Int的列表.

我定义了自己的类:Filter_IDs.它的构造函数需要两个参数:

public int? type; // Represents the object_type column from my database
public List<int?> objects; // Represents the object_id column from my database
Run Code Online (Sandbox Code Playgroud)

我想将数据库中的数据加载到此对象中.以下LINQ查询应该生成Filter_ID列表:

以下LINQ查询应该生成Filter_ID列表:

List<Filter_IDs> filterids = ef.filterLine
        .GroupBy(fl => fl.objectType)
    .Select(fl => new Filter_IDs { type = fl.Key, objects = fl.Select(x => x.object_id).ToList() })
    .ToList();
Run Code Online (Sandbox Code Playgroud)

使用此查询不会产生构建错误,但会在RunTime上显示"NotSupportedException".

数据库看起来像这样可以让您更好地理解数据:

http://d.pr/i/mnhq+(droplr image)

提前谢谢,Gerben

c# linq database entity-framework notsupportedexception

8
推荐指数
1
解决办法
6万
查看次数

使用 Azure 函数的 Azure SignalR 无服务器 OnConnected 触发器(传统模型)

我将 Azure SignalR 服务与 Azure Functions 结合使用,并且有以下代码:

    public class SignalRHubFunction
    {
        [FunctionName("SignalRConnected")]
        public async Task Run([SignalRTrigger("myhubname", "connections", "connected", ConnectionStringSetting = "AzureSignalRConnectionString")] InvocationContext invocationContext, ILogger logger)
        {
            logger.LogInformation($"{invocationContext.ConnectionId} connected");
        }
    }
Run Code Online (Sandbox Code Playgroud)

我很难触发“OnConnected”事件。仅提供基于类的模型的示例。而且这些文档对我来说并没有真正的帮助。

文档告诉我构造函数的类别SignalRTrigger参数应该是: connectionsmessages。所以我使用连接

该值必须设置为要触发的功能的消息类别。该类别可以是以下值之一: 连接:包括连接和断开连接事件 消息:包括除连接类别中的事件之外的所有其他事件

我不太明白文档中事件参数的含义

该值必须设置为消息事件才能触发该功能。对于消息类别,事件是客户端发送的调用消息中的目标。对于连接类别,仅使用已连接和已断开连接。

我猜他们是说你可以在连接断开之间进行选择。

然而,使用上面的代码永远不会触发触发器。有什么想法吗?

signalr asp.net-core azure-functions serverless

5
推荐指数
1
解决办法
2447
查看次数