サービス スタック構成で、「タイプ IRequestLogger の登録が見つかりませんでした」というエラーが表示されます。デフォルトの構成では、周りを見回すと、構成のようにプラグインを追加する必要があるようです。
Plugins.Add(new RequestLogsFeature { RequiredRoles = new string[] { } });
問題は、なぜこのエラーが発生するのかということです。必要に応じて IRequestLogger を定義します。
IoC コンテナーとして Simple Injector を使用しています。
編集:これは私のIoCコードです:
public override void Configure(Container container)
{
var simpleInjector = new SimpleInjectorContainer();
container.Adapter = simpleInjector;
Plugins.Add(new RequestLogsFeature { RequiredRoles = new string[] { } });
simpleInjector.SContainer.Register<ICacheClient, MemoryCacheClient>();
simpleInjector.SContainer.Register<IUserRepository,UserRepository>();
Routes.Add<UserRequest>("/Api/User/{Id}");
//Routes.Add<HomeResponse>("/Api/Home","GET");
}
public class SimpleInjectorContainer:ISimpleInjectorContainer
{
public SimpleInjectorContainer()
{
SContainer = new SimpleInjector.Container();
}
public SimpleInjector.Container SContainer { get; set; }
public T TryResolve<T>()
{
return (T)SContainer.GetInstance(typeof(T));
}
public T Resolve<T>()
{
return (T)SContainer.GetInstance(typeof(T));
}
}
public interface ISimpleInjectorContainer : IContainerAdapter
{
SimpleInjector.Container SContainer { get; set; }
}
ありがとう。