【发布时间】:2020-06-08 22:07:56
【问题描述】:
我正在构建一个小型 webapi,以便与在后台运行的其他功能结合使用。
在特定情况下,我有一个名为 TelegramBot 的类:
public class TelegramBot
{
static ITelegramBotClient botClient;
private readonly BotManagerContext _botManagerContext;
public TelegramBot(BotManagerContext botManagerContext)
{
_botManagerContext = botManagerContext;
botClient = new TelegramBotClient("xxxx:yyyyy");
botClient.OnMessage += Bot_OnMessage;
botClient.StartReceiving();
}
我正在尝试与 web api 一起运行。 BotManagerContext 是在 web api 中初始化的 DbContext,我正在尝试使用依赖注入来检索它 - 所以我正在尝试将 TelegramBot 类添加到 Startup.cs 文件中,以便它作为单例启动并可以检索 dbcontext
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<BotManagerContext>(opt =>
opt.UseSqlite("Data Source=BotManager.db"));
services.AddControllers();
services.AddSingleton<TelegramBot>();
}
问题是 - 我该如何实现?使用接口?我对此很陌生,我不知道如何实现它:) 谢谢
【问题讨论】:
标签: c# asp.net-core-webapi asp.net-core-3.0