C# StructureMap 2.6.1无法覆盖默认注册

C# StructureMap 2.6.1无法覆盖默认注册,c#,asp.net-mvc-3,structuremap,C#,Asp.net Mvc 3,Structuremap,对于MVC3,结构图2.6.1 应用程序1中的基本注册/使用情况 For<IMyRepository<MyRequest, MyResponse>>().Use<MyRepository>(); public class MyRepository : IMyRepository<MyRequest,MyResponse> var foo = ObjectFactory.GetInstance<IMyRepository<MyReques

对于MVC3,结构图2.6.1

应用程序1中的基本注册/使用情况

For<IMyRepository<MyRequest, MyResponse>>().Use<MyRepository>();
public class MyRepository : IMyRepository<MyRequest,MyResponse>
var foo = ObjectFactory.GetInstance<IMyRepository<MyRequest, MyResponse>>();
IMyRepository`2<MyRequest, MyResponse> (IMyRepository`2<MyRequest, MyResponse>)     
408858...  Configured Instance of MyOverriddenRepository, ...
Scoped as:  Transient
20ebeb...  Configured Instance of MyRepository, ...
976143...  Configured Instance of MyRepository, ...
408858...  Configured Instance of MyOverriddenRepository, ...
For().Use();
公共类MyRepository:IMyRepository
var foo=ObjectFactory.GetInstance();
按预期返回MyRepository…,App2覆盖尝试

注意:App2在App1之后注册

public class MyOverriddenRepository : MyRepository
For<IMyRepository<MyRequest, MyResponse>>().Use<MyOverriddenRepository>();
var overriddenFoo = ObjectFactory.GetInstance<IMyRepository<MyRequest, MyResponse>>();
公共类MyOverriddenRepository:MyRepository
For().Use();
var overridedenfoo=ObjectFactory.GetInstance();
OverridedFoo的类型是MyRepository,而不是MyOverrideRepository,为什么??
在App1中尝试了相同的覆盖,Foo返回MyOverriddenRepository

应用程序1中有什么内容

For<IMyRepository<MyRequest, MyResponse>>().Use<MyRepository>();
public class MyRepository : IMyRepository<MyRequest,MyResponse>
var foo = ObjectFactory.GetInstance<IMyRepository<MyRequest, MyResponse>>();
IMyRepository`2<MyRequest, MyResponse> (IMyRepository`2<MyRequest, MyResponse>)     
408858...  Configured Instance of MyOverriddenRepository, ...
Scoped as:  Transient
20ebeb...  Configured Instance of MyRepository, ...
976143...  Configured Instance of MyRepository, ...
408858...  Configured Instance of MyOverriddenRepository, ...
IMyRepository`2(IMyRepository`2)
408858...  已配置MyOverrideRepository的实例。。。
范围为:瞬态
20ebb。。。已配置MyRepository的实例。。。
976143...  已配置MyRepository的实例。。。
408858...  已配置MyOverrideRepository的实例。。。
应用程序2中有什么内容

IMyRepository`2<MyRequest, MyResponse> (IMyRepository`2<MyRequest, MyResponse>)     
976143...  Configured Instance of MyRepository, ...
Scoped as:  Transient
976143...  Configured Instance of MyRepository, ...
408858...  Configured Instance of MyOverriddenRepository, ...
IMyRepository`2(IMyRepository`2)
976143...  已配置MyRepository的实例。。。
范围为:瞬态
976143...  已配置MyRepository的实例。。。
408858...  已配置MyOverrideRepository的实例。。。
进一步诊断的方法是什么?尝试查看是structuremap错误还是我的错误?