C# 无法进入unity应用程序块配置的接口实现

C# 无法进入unity应用程序块配置的接口实现,c#,model-view-controller,dependency-injection,unity-container,enterprise-library,C#,Model View Controller,Dependency Injection,Unity Container,Enterprise Library,我已经用EntLib配置了一组接口实现。统一街区。只要我运行应用程序,实现类的构造函数就可以正常工作: 1.要实现的接口 当我运行应用程序时,cctor运行良好,这表明unity resolution成功: 但是,当我尝试调用此类的方法时,代码只是通过而没有实际调用已实现类的函数: 编辑:于2012年6月11日添加 下面是我的Unity配置。(这就是我正在做的所有unity配置) 我无法单步执行这段代码,而实现只是在不执行任何操作的情况下跳出。这里有什么问题?当调试器在断点处停止时,右键单

我已经用EntLib配置了一组接口实现。统一街区。只要我运行应用程序,实现类的构造函数就可以正常工作: 1.要实现的接口

当我运行应用程序时,cctor运行良好,这表明unity resolution成功:

但是,当我尝试调用此类的方法时,代码只是通过而没有实际调用已实现类的函数:

编辑:于2012年6月11日添加 下面是我的Unity配置。(这就是我正在做的所有unity配置)


我无法单步执行这段代码,而实现只是在不执行任何操作的情况下跳出。这里有什么问题?

当调试器在断点处停止时,右键单击该行并选择“单步执行特定”,然后选择要单步执行的方法


该类/方法是否在另一个程序集中(不是另一个项目)?此类的源代码可能未加载(或者调试符号未正确刷新,如果是这种情况,重新启动VS可能会修复),因此调试器会跳过它。另外,该方法可能会使用调试器StepThroughAttribute来修饰,这会导致调试器跳过它。

实际的问题是一个yield语句,它在解析结果之前不会进入代码。

如果完全跳过代码,这可能表示您需要刷新dll。尝试清理解决方案文件并重建它。如果不是这种情况,请在调试时使用
F11
而不是
F10
。我已尝试清洁解决方案并使用F11当调试器在断点处停止时,右键单击该行并选择“进入特定步骤”,然后选择您希望进入的方法。@KyleTrauberman:但是如何使代码正常运行呢?为什么会发生这种情况,有什么特别的原因吗?我能在某处看到任何痕迹吗?谢谢你的评论。当我尝试单步执行特定代码时,在我可以单步执行的代码块列表中找不到接口实现,它只显示了我实现的接口方法。这里可能出了什么问题?
 public class UnityControllerFactory : DefaultControllerFactory
{
    private static readonly IUnityContainer container;
    private static UnityControllerFactory factory = null;

    static UnityControllerFactory()
    {
        container = new UnityContainer();
        UnityConfigurationSection section = (UnityConfigurationSection)ConfigurationManager.GetSection("unity");
        section.Configure(container);
        factory = new UnityControllerFactory();
    }

    public static UnityControllerFactory GetControllerFactory()
    {
        return factory;
    }

    protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType)
    {
        return container.Resolve(controllerType) as IController;
    }
}