Rebus: нельзя ли использовать Rebus.Castle.Windsor вместе с Rebus 5.3 - PullRequest
0 голосов
/ 16 мая 2019

При попытке использовать rebus castle windsor вместе с rebus 5.3 и сообщать об ошибке времени компиляции, что «IHanlderActivator» определен в сборке, на которую нет ссылок, необходимо добавить ссылку на сборку rebus 4.0

Error with rebus 5.3 for rebus castle wind

Совместима ли rebus castle windsor только с rebus 4.0 сейчас?

1 Ответ

1 голос
/ 16 мая 2019

Это, безусловно, возможно.

Я только что создал консольное приложение (.NET 4.7.2) и установил

  • Rebus
  • Rebus.Castle.Windsor
  • Rebus.XmlConfig (потому что я вижу, что вы используете это)

пакеты NuGet, что, в свою очередь, привело к следующему пакету package.config:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Castle.Core" version="4.2.0" targetFramework="net472" />
  <package id="Castle.Windsor" version="4.1.0" targetFramework="net472" />
  <package id="Newtonsoft.Json" version="11.0.1" targetFramework="net472" />
  <package id="Rebus" version="5.3.1" targetFramework="net472" />
  <package id="Rebus.Castle.Windsor" version="4.1.0" targetFramework="net472" />
  <package id="Rebus.XmlConfig" version="4.0.0" targetFramework="net472" />
</packages>

С помощью этой маленькой программы:

namespace ConsoleApp1
{
    class Program
    {
        static void Main()
        {
            using (var container = new WindsorContainer())
            {
                Configure.With(new CastleWindsorContainerAdapter(container))
                    .Transport(t => t.UseInMemoryTransport(new InMemNetwork(), "windsor-test"))
                    .Routing(r => r.TypeBasedRoutingFromAppConfig())
                    .Start();

                Console.WriteLine("Press ENTER to quit");
                Console.ReadLine();
            }
        }
    }
}

Я получаю это: picture of console application running

Не могли бы вы попробовать и проверить, например, чем отличается ваш packages.config отмой?

...