Как преобразовать работающее промежуточное ПО в Asp. Net MVC приложении в Asp. Net Core MVC приложение? - PullRequest
0 голосов
/ 19 марта 2020

У меня есть приложение, реализованное с использованием Asp. Net MVC, и в нем есть внешнее промежуточное программное обеспечение, работающее в Global.asax Application_Start, как показано ниже:

public class MvcApplication : System.Web.HttpApplication
{
    public static AriClient ActionClient;
}

protected void Application_Start()
{
    AreaRegistration.RegisterAllAreas();
    RouteConfig.RegisterRoutes(RouteTable.Routes);

    ListenToAsterisk();
}

public void ListenToAsterisk()
{
    ActionClient = new AriClient(
        new StasisEndpoint("ServerUrl", "ServerPort", "Username", "Password"),
        "AsterHubApp",
        true);

    ActionClient.OnConnectionStateChanged += ActionClientOnConnectionStateChanged;
    ActionClient.OnDialEvent += ActionClientOnDialEvent;
    ActionClient.OnChannelStateChangeEvent += ActionClientChannelStateChangeEvent;
    ActionClient.OnChannelHangupRequestEvent += ActionClientHangupRequestEvent;
    ActionClient.OnDeviceStateChangedEvent += ActionClientDeviceStateChangeEvent;

    ActionClient.Connect();
}

Оно работает, но рассмотрите некоторые причины, по которым я решил преобразовать свое приложение в Asp. Net Core, поэтому мне нужно добавить свой AriClient в StartUp приложения.

Поскольку я новичок в Asp. Net Core I не знаю, как мне добавить его в качестве MiddleWare в конфигурацию приложения.

Я попробовал приведенный ниже код, но он не корректен, так как я знаю, так что для большей ясности, что я хочу сделать:

        app.UseMiddleware<AriClient>(
            actionClient => {
                actionClient = new AriClient(
                new StasisEndpoint("ServerUrl", "ServerPort", "Username", "Password"),
                "AsterApp",
                true)
            }
        );

Большое спасибо за любую помощь.

...