【问题标题】:Autofac get service type inside ResolvedParameter valueAccessorAutofac 在 ResolvedParameter valueAccessor 中获取服务类型
【发布时间】:2018-11-09 23:55:04
【问题描述】:

为了能够正确解析构造函数参数的对象, 我需要知道我正在注册的实际服务的类型,因为在我的情况下,我正在从不同的程序集中注册多种类型。 我没有找到通过注册上下文访问它的方法,因为实际激活不是它的公共属性。 注册示例如下:

builder
                    .RegisterAssemblyTypes(_assemblies)
                    .AsClosedTypesOf(typeof(IValidationPolicy<,>))
                    .WithParameters(new Parameter[]
                    {
                        new ResolvedParameter((p,c)=>p.Position==0,
                            (p, c) =>
                            {
                             //I need service type here

是我遗漏了什么还是 Autofac 限制?

【问题讨论】:

    标签: autofac


    【解决方案1】:

    我认为 p.Member.DeclaringType 应该可以解决问题。 Member 属性是解析参数的方法/ctor。 DeclaringType 属性是声明方法/ctor 的类型。

    【讨论】:

      猜你喜欢
      • 2020-08-23
      • 1970-01-01
      • 2021-09-16
      • 1970-01-01
      • 2014-09-14
      • 1970-01-01
      • 1970-01-01
      • 2013-07-12
      • 1970-01-01
      相关资源
      最近更新 更多