2013-10-21 76 views
1

我正在運行到我的MVC部分視圖上的StackOverflowException。我們還通過Unity使用實體框架和依賴注入。MVC部分視圖中的StackOverflowException

@(Html.Kendo().TabStrip() 
    .Name("mainNav") 
    .HtmlAttributes(new { @class = "mainnav" }) 
    .Animation(false) 
    .Items(i => 
    { 
     i.Add().Text("Home").Action("Dashboard", "Home"); 
     i.Add().Text("Clients").Action("Manage", "Household"); 
     i.Add().Text("Properties").Action("Manage", "Property"); 
     i.Add().Text("Financial").Action("FinancialSummary", "Financial"); 
     i.Add().Text("Payables").Action("Manage", "PurchaseOrder") 
      .Content(Html.Partial("~/Views/PurchaseOrder/_ManageContent.cshtml").ToString()); 
     i.Add().Text("Maintenance").Action("Manage", "WorkOrder"); 
     i.Add().Text("Capital Planning").Action("Index", "CapitalPlanning"); 
    }) 
) 

如果我只是簡單的操作,如i.Add().Text("Home"),它工作得很好:

當我在我的劍道標籤欄的動作,像這樣它纔會發生。

異常不想告訴我的調用堆棧(「無法因爲線程堆棧溢出狀態來計算表達式」),但我最終還是想看看調用堆棧選項卡上視覺工作室。從那裏,調用堆棧看起來是這樣的:

Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey newBuildKey) + 0x1f3 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xad bytes  
[Lightweight Function] 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x47 bytes  
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0x30a bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext context) + 0xcd bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.UnityContainer.DoBuildUp(System.Type t, object existing, string name, System.Collections.Generic.IEnumerable<Microsoft.Practices.Unity.ResolverOverride> resolverOverrides) + 0x285 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.UnityContainer.DoBuildUp(System.Type t, string name, System.Collections.Generic.IEnumerable<Microsoft.Practices.Unity.ResolverOverride> resolverOverrides) + 0x4e bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.UnityContainer.Resolve(System.Type t, string name, Microsoft.Practices.Unity.ResolverOverride[] resolverOverrides) + 0x46 bytes 
Microsoft.Practices.Unity.dll!Microsoft.Practices.Unity.UnityContainerExtensions.Resolve(Microsoft.Practices.Unity.IUnityContainer container, System.Type t, Microsoft.Practices.Unity.ResolverOverride[] overrides) + 0x71 bytes 
Unity.Mvc3.dll!Unity.Mvc3.UnityDependencyResolver.GetService(System.Type serviceType) + 0x9f bytes 
System.Web.Mvc.dll!System.Web.Mvc.DefaultControllerFactory.DefaultControllerActivator.Create(System.Web.Routing.RequestContext requestContext, System.Type controllerType) + 0x97 bytes 
System.Web.Mvc.dll!System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(System.Web.Routing.RequestContext requestContext, System.Type controllerType) + 0x2b2 bytes  
System.Web.Mvc.dll!System.Web.Mvc.DefaultControllerFactory.CreateController(System.Web.Routing.RequestContext requestContext, string controllerName) + 0x15b bytes 
Kendo.Mvc.dll!Kendo.Mvc.Infrastructure.Implementation.ControllerContextCache.ControllerContextFactory(System.Web.Routing.RequestContext requestContext, string controllerName, string areaName) + 0x99 bytes   

回答

0

看來,劍道行動是風馬牛不相及的問題,除了是剛夠觸發引導程序和依賴注入。由於我們其餘的大部分視圖都是在Tabstrip內部,所以沒有其他人有機會執行。

雖然錯誤是被拋出的觀點,真正的問題是我們的服務循環引用,例如:

public class ServiceA : IServiceA 
{ 
    private readonly IServiceB _svcB; 

    public ServiceA(IServiceB svcB) 
    { 
     _svcB = svcB 
    } 
} 

public class ServiceB : IServiceB 
{ 
    private readonly IServiceA _svcA; 

    public ServiceB(IServiceA svcA) 
    { 
     _svcA = svcA 
    } 
} 

當然,我們的層次結構是有點更復雜,因此,異常的來源不太明顯(尤其是因爲異常是在View中引發的,而不是在實際的Service中)。

爲了解決這個問題,我要麼注入基礎知識庫,要麼將一些常見功能移到自己的服務中。但是,由於真正的鬥爭只是確定錯誤發生的原因,所以我希望這會爲某人節省一些時間!