현재 SignalR을 사용하는 프로젝트에서 작업 중입니다. Startup()
의 constructor
은 매개 변수가 필요하지 않습니다. 이는 아래 코드를 사용해야하는 ChatHub
생성자를 호출하는 것을 의미합니다.인터페이스 매개 변수를 사용하여 클래스 생성자 호출
public void Configuration(IAppBuilder app)
{
GlobalHost.DependencyResolver.Register(
typeof(ChatHub),
() => new ChatHub(
new ConnectionService(null));
app.MapSignalR();
}
오전 데 문제는, 나는 당신이 interface
의 인스턴스를 만들 수 없습니다 알고 ConnectionService
에 대한 해당 매개 변수가 interface
public partial class ConnectionService : IConnectionService
{
private readonly IRepository<Connection> _connectionRepository;
public ConnectionService(IRepository<Connection> connection)
{
this._connectionRepository = connection;
}
}
이 인터페이스에 비교적 새로운되는 매개 변수를 필요로한다는 것이다 즉, 내가 그걸 constructor
에 전달할 수는 없다는 것을 의미합니다. 그래서 내가하고 싶은 일이 심지어 수행 될지라도, 어떤 도움이나 해결책에 대한 링크는 인정됩니다.
'null' 어떤 인터페이스에 대해 작동합니다 :) – Fabio
나는 널 (null)을 전달하려고 않았다 하지만 내가 그것을 사용하려고하면 객체가 null이라는 에러가 발생합니다. –