Ich versuche, MassTransit zu lernen. Ich habe MassTransit.RabbitMQ Version 3.3.5 über NuGet installiert. Ich habe bereits Erlang 18.0 * und RabbitMQ 3.6.3 installiert (* Erlang Version 19.0 ist instabil mit RabbitMQ 3.6.3). Ich fand einen "schnellen Start" MassTransit-Programm here, und nach der Reparatur ein wenig Typo, habe es kompilieren. Jedoch, wenn ich das Programm ausführe, wird die veröffentlichte Nachricht "YourMessage" nicht vom Handler gehandhabt! Die Benutzeroberfläche des RabbitMQ-Verwaltungs-Plugins zeigt an, dass es eine Warteschlange "test_queue" mit einer Nachricht gibt. Und dort bleibt es unbearbeitet. Was geht hier vor sich? Ich verwende Windows 7 und der RabbitMQ-Dienst läuft.MassTransit Quick Start App funktioniert nicht
using MassTransit;
using System;
namespace MassTransitPOC.Trivial
{
public class YourMessage
{
public string Text { get; set; }
}
public class Program
{
public static void Main()
{
var bus = Bus.Factory.CreateUsingRabbitMq(sbc =>
{
var host = sbc.Host(new Uri("rabbitmq://localhost"), h =>
{
h.Username("guest");
h.Password("guest");
});
sbc.ReceiveEndpoint(host, "test_queue", ep =>
{
ep.Handler<YourMessage>(context =>
{
return Console.Out.WriteLineAsync($"Received: {context.Message.Text}");
});
});
});
bus.Start();
bus.Publish(new YourMessage { Text = "Hi" });
bus.Stop();
}
}
}
Danke für die Antwort, aber Ihr Code hat nichts geändert, außer für den Stil des lambda-Ausdrucks, der den Handler ausmacht; es funktioniert immer noch nicht. – Andy