南希依赖解析器

Nancy DependencyResolver

我正在使用 Nancy Framework 和 autofac,我在 Bootstrapper 中是这样做的:

var services = Assembly.Load("ProjectDomain");
builder.RegisterAssemblyTypes(services)
    .AsClosedTypesOf(typeof(ICommandHandler<>))
    .InstancePerRequest();
builder.RegisterAssemblyTypes(services)
    .AsClosedTypesOf(typeof(IValidationHandler<>))
    .InstancePerRequest();

但是没用.....

ICommandHandler<TCommand> handler =
    DependencyResolver.Current.GetService<ICommandHandler<TCommand>>();

处理程序为空!如何解决?帮帮我,谢谢。。。

我相信您正在注册 AsSelf 类型(这是默认的 autofac 行为)。你能试试这个吗?

builder.RegisterAssemblyTypes(services)
    .AsClosedTypesOf(typeof(ICommandHandler<>))
    .AsImplementedInterface()
    .InstancePerRequest();