/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/MassTransit/Middleware/Outbox/InMemoryInboxMessageKey.cs
39 строк
1 KB
Chris Patterson
Working on an inbox/outbox implementation for Entity Framework Core, InMemory, and ultimately additional transaction-based storage engines
17 июн 2022, 02:49
17 июн 2022, 02:49
77e1f4b
Код
Авторство
О чём код?
namespace MassTransit.Middleware.Outbox { using System; using System.Collections.Generic; public readonly struct InMemoryInboxMessageKey { public readonly Guid MessageId; public readonly Guid ConsumerId; public InMemoryInboxMessageKey(Guid messageId, Guid consumerId) { MessageId = messageId; ConsumerId = consumerId; } sealed class EqualityComparer : IEqualityComparer<InMemoryInboxMessageKey> { public bool Equals(InMemoryInboxMessageKey x, InMemoryInboxMessageKey y) { return x.MessageId.Equals(y.MessageId) && x.ConsumerId.Equals(y.ConsumerId); } public int GetHashCode(InMemoryInboxMessageKey obj) { unchecked { return (obj.MessageId.GetHashCode() * 397) ^ obj.ConsumerId.GetHashCode(); } } } public static IEqualityComparer<InMemoryInboxMessageKey> Comparer { get; } = new EqualityComparer(); } }