在 signalr-core hub 中带有参数的构造函数
constructor with parameters in a signalr-core hub
我想在我的集线器中注入一些东西。
基本上我正在尝试相当于本教程 https://docs.microsoft.com/en-us/aspnet/signalr/overview/advanced/dependency-injection,但针对 SignalR-Core。
我最感兴趣的部分是
public void Configuration(IAppBuilder app)
{
GlobalHost.DependencyResolver.Register(
typeof(ChatHub),
() => new ChatHub(new ChatMessageRepository()));
App.MapSignalR();
// ...
}
我该如何做这个 Net Core 和 SignalR-Core?
在 DI 容器中注册您的 ChatMessageRepository
:
services.AddTransient(typeof(ChatMessageRepository), typeof(ChatMessageRepository));
然后在 ctor 中注入你的 hub:
public ChatHub : Hub
{
private readonly ChatMessageRepository _repository;
public ChatHub(ChatMessageRepository repository)
{
_repository = repository;
}
...
}
我想在我的集线器中注入一些东西。
基本上我正在尝试相当于本教程 https://docs.microsoft.com/en-us/aspnet/signalr/overview/advanced/dependency-injection,但针对 SignalR-Core。 我最感兴趣的部分是
public void Configuration(IAppBuilder app)
{
GlobalHost.DependencyResolver.Register(
typeof(ChatHub),
() => new ChatHub(new ChatMessageRepository()));
App.MapSignalR();
// ...
}
我该如何做这个 Net Core 和 SignalR-Core?
在 DI 容器中注册您的 ChatMessageRepository
:
services.AddTransient(typeof(ChatMessageRepository), typeof(ChatMessageRepository));
然后在 ctor 中注入你的 hub:
public ChatHub : Hub
{
private readonly ChatMessageRepository _repository;
public ChatHub(ChatMessageRepository repository)
{
_repository = repository;
}
...
}