0

我正在尝试设计一个新的应用程序,但有点坚持最好的方法。

我想要做的是让一个机器人连接到一个 irc 通道,该通道正在从聊天消息中收集信息,然后我想要一个 HTTP 端点,我可以从迄今为止收集的信息中获取结果。

我有一个正在运行的机器人,它收集我想要的信息,我可以创建端点,但我如何将它构建到 1 个应用程序中?我有2个应用程序吗?1 输出到文件和端点只是读取文件并输出?我更喜欢在 1 个应用程序中使用它,但到目前为止还没有找到这样的解决方案。

我目前正在使用 DotNet core 2.0 并部署到 Raspberry Pi。

4

1 回答 1

0

这取决于工作量。如果应用程序定期收集信息并且其余时间什么都不做,我建议将其作为 ASP.NET 服务启动:

public static void Main(string[] args)
{
    var host = new WebHostBuilder()
        .UseKestrel()
        .UseContentRoot(Directory.GetCurrentDirectory())
        .UseIISIntegration()
        .UseStartup<Startup>()
        .Build();
    host.Run();
}

为您当前的控制台应用程序安装所有依赖项(这将起作用)。要收集数据,您可以使用HangFire。它库来运行后台作业。要像这样运行后台作业重复注册作业:

RecurringJob.AddOrUpdate(
    () => { //Gather data here },
    Cron.Daily);
于 2017-09-15T03:51:18.037 回答