【发布时间】:2017-05-02 17:48:28
【问题描述】:
我正在尝试在信号器应用程序中使用依赖注入,我目前使用此文档作为指南:https://docs.microsoft.com/en-us/aspnet/signalr/overview/advanced/dependency-injection
我遇到的问题是我有一个继承接口的类,并且在构造函数中需要一个参数。
public partial class ConnectionService : IConnectionService
{
private readonly IRepository<Connection> _connectionRepository;
public ConnectionService(IRepository<Connection> connection)
{
this._connectionRepository = connection;
}
}
在我使用的代码示例的文档中说要使用这段代码:
public void Configuration(IAppBuilder app)
{
GlobalHost.DependencyResolver.Register(
typeof(ChatHub),
() => new ChatHub(new ChatMessageRepository()));
App.MapSignalR();
// ...
}
在我的项目中使用它时遇到的问题是 ConnectionService 类需要一个参数 IRepository
GlobalHost.DependencyResolver.Register(
typeof(ChatHub),
() => new ChatHub(new ConnectionService()));
我是使用接口的新手,所以我不确定我实际上要传递什么,每当我尝试传递像 IConnectionService 或 IRepository 这样的对象时,它都会说我不能将它们用作类型。
【问题讨论】: