我正在尝试设计一个新的应用程序,但我有点坚持最好的方法。
我想要做的是将一个机器人连接到irc频道,该频道从聊天消息中收集信息,然后我想拥有一个HTTP端点,我可以从中获取迄今为止收集的信息的结果。
我有一个机器人运行,收集我想要的信息,我可以创建端点,但我如何将其构建到一个应用程序?我有2个申请吗? 1输出到文件,端点只读取文件并输出?我更喜欢它在一个应用程序中,但到目前为止还没有找到这样的解决方案。
我目前正在使用DotNet核心2.0并部署到Raspberry Pi。
答案 0 :(得分:0)
这取决于工作量。 如果应用程序收集信息定期执行并且不做任何其他时间,我建议将其作为ASP.NET服务启动:
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
}
为您当前的控制台应用程序安装所有依赖项(这将起作用)。 要收集数据,您可以使用 HangFire 。它库来运行后台作业。 要运行后台作业reccurence注册工作,请执行以下操作:
RecurringJob.AddOrUpdate(
() => { //Gather data here },
Cron.Daily);