Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何并行执行ABP通知?_C#_Notifications_Signalr_Aspnetboilerplate - Fatal编程技术网

C# 如何并行执行ABP通知?

C# 如何并行执行ABP通知?,c#,notifications,signalr,aspnetboilerplate,C#,Notifications,Signalr,Aspnetboilerplate,我目前正在使用ASP.NET样板模式,它非常有效。我能够发送通知,没有任何问题 我现在的问题是发送大量通知。是否有任何方法可以并行执行ABP通知,或者有任何建议可以使其执行更快 任何帮助都将不胜感激 // AppNotifier.cs public void ContactTransferred(long userId) { var notificationData = new Abp.Notifications.NotificationData(); _notificati

我目前正在使用ASP.NET样板模式,它非常有效。我能够发送通知,没有任何问题

我现在的问题是发送大量通知。是否有任何方法可以并行执行ABP通知,或者有任何建议可以使其执行更快

任何帮助都将不胜感激

// AppNotifier.cs

public void ContactTransferred(long userId)
{
    var notificationData = new Abp.Notifications.NotificationData();

    _notificationPublisher.Publish(
        AppNotificationNames.ContactTransferredAlert,
        notificationData,
        severity: NotificationSeverity.Info,
        userIds: new long[] { userId }
    );
}

你为什么不这样做

// AppNotifier.cs

public void ContactTransferred(long[] userIdList)
{
    var notificationData = new Abp.Notifications.NotificationData();

    _notificationPublisher.Publish(
        AppNotificationNames.ContactTransferredAlert,
        notificationData,
        severity: NotificationSeverity.Info,
        userIds: userIdList
    );
}
试试绞刑
// AppNotifier.cs

public void ContactTransferred(long[] userIdList)
{
    var notificationData = new Abp.Notifications.NotificationData();

    _notificationPublisher.Publish(
        AppNotificationNames.ContactTransferredAlert,
        notificationData,
        severity: NotificationSeverity.Info,
        userIds: userIdList
    );
}
// Usage

private readonly IAppNotifier _appNotifier;

var contactIdList =  cList.Select(c=>c.Id).ToArray();
_appNotifier.ContactTransferred(contactIdList );