C# 使用名称为的Unity RegisterType时,拦截器不会';行不通 container.RegisterType(“MyType”); container.AddNewExtension() .Configure() .SetInterceptorFor(新接口interceptor());

C# 使用名称为的Unity RegisterType时,拦截器不会';行不通 container.RegisterType(“MyType”); container.AddNewExtension() .Configure() .SetInterceptorFor(新接口interceptor());,c#,unity-container,interception,C#,Unity Container,Interception,当我用一个名字解析我的类型时,拦截就不起作用了。 但当我删除该名称时,它将再次起作用。 我的代码有什么问题?您没有指定要使用哪种拦截行为。设置拦截器不会添加任何行为 看一看这张照片 Unity 2.0部分方法包含一个示例配置。您没有指定要使用的拦截行为。设置拦截器不会添加任何行为 看一看这张照片 Unity 2.0部分的方法包含一个示例配置。该示例演示了如何手动实现拦截器。但我想像我的代码一样自动实现拦截器。我使用属性来定义行为。@Dozer然后给出完整的代码示例,这样我就不必猜测您在做什么。该

当我用一个名字解析我的类型时,拦截就不起作用了。 但当我删除该名称时,它将再次起作用。 我的代码有什么问题?

您没有指定要使用哪种拦截行为。设置拦截器不会添加任何行为

看一看这张照片

Unity 2.0部分方法包含一个示例配置。

您没有指定要使用的拦截行为。设置拦截器不会添加任何行为

看一看这张照片


Unity 2.0部分的方法包含一个示例配置。

该示例演示了如何手动实现拦截器。但我想像我的代码一样自动实现拦截器。我使用属性来定义行为。@Dozer然后给出完整的代码示例,这样我就不必猜测您在做什么。该示例演示了如何实现拦截器手动。但我想像我的代码一样自动执行。我使用属性来定义行为。@Dozer然后给出完整的代码示例,这样我就不必猜你在做什么。
container.RegisterType<IMyType, MyType>("MyType");

container.AddNewExtension<Interception>()
            .Configure<Interception>()
            .SetInterceptorFor<IMyType>(new InterfaceInterceptor());