Microsoft Enterprise Library类型加载异常无法加载Microsoft.Practices.EnterpriseLibrary.Common.Configuration.EnterpriseLibraryContainer

时间:2014-07-04 12:36:45

标签: c# .net caching enterprise-library enterprise-library-5

我正在尝试整理朋友服务。基本上,一旦我在构造函数中启动它就会出错。这是代码片段。

public class DefaultCacheManager : ICacheManager
{
    private readonly Microsoft.Practices.EnterpriseLibrary.Caching.ICacheManager _cacheManager;

    public DefaultCacheManager()
    {
        //Code blows here
        _cacheManager = CacheFactory.GetCacheManager();
    }

我得到的错误如下。

  
    

未处理的异常:System.TypeInitializationException:'Test.TypeManagement'的类型初始值设定项引发了异常。 --->     Microsoft.Practices.Unity.ResolutionFailedException:解析     依赖失败,type =“Test.DefaultCacheManager”,名称     =“CacheManager”。发生异常时:调用构造函数Test.DefaultCacheManager()。例外是:TypeLoadException - 可以     不加载类型     'Microsoft.Practices.EnterpriseLibrary.Common.Configuration.EnterpriseLibraryContainer'     来自程序集'Microsoft.Practices.EnterpriseLibrary.Common,     Version = 6.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'。      - - - - - - - - - - - - - - - - - - - - - - - - 当时例外,容器是:

  
     

解析Test.DefaultCacheManager,CacheManager调用   构造函数Test.DefaultCacheManager()---> System.TypeLoadException:   无法加载类型   'Microsoft.Practices.EnterpriseLibrary.Common.Configuration.EnterpriseLibraryContainer'   来自程序集'Microsoft.Practices.EnterpriseLibrary.Common,   Version = 6.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'。
  在   Microsoft.Practices.EnterpriseLibrary.Caching.CacheFactory.InnerGetCacheManager(字符串   cacheManagerName)在Test.DefaultCacheManager..ctor()中   c:\ Test \ CacheManager.cs:lambda_method第12行(Closure,   IBuilderContext)at   Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext<> c__DisplayClass1.b__0(IBuilderContext   上下文)   Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext   上下文)   Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext   上下文)在Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type   t,Object existing,String name,IEnumerable 1 resolverOverrides)
--- End of inner exception stack trace --- at Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable
1 resolverOverrides)at   Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t,String   name,IEnumerable`1 resolverOverrides)at   Microsoft.Practices.Unity.UnityContainerExtensions.Resolve [T](IUnityContainer   容器,字符串名称,ResolverOverride []覆盖)at   Test.TypeManagement.get_CacheManager()in   c:\ Test \ TypeManagement.cs:Test.TypeManagement..cctor()中的第56行   在c:\ Test \ TypeManagement.cs中:第36行---内部异常结束   堆栈跟踪---在Test.TypeManagement.get_ServiceHost()处   C:\ Test \ ThreadManager.cs中的Test.ThreadManager.Start():第19行   c:\ Test \ Program.cs中的Test.Program.Main(String [] args):第14行

任何帮助和指导都会受到欢迎。

配置

<configSections>      
  <section name="cachingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
</configSections>
<cachingConfiguration defaultCacheManager="Cache Manager">
  <cacheManagers>
    <add expirationPollFrequencyInSeconds="60" maximumElementsInCacheBeforeScavenging="1000" numberToRemoveWhenScavenging="10" backingStoreName="Data Cache Storage" name="Cache Manager" />
  </cacheManagers>
  <backingStores>
    <add databaseInstanceName="CachingStaging" partitionName="CS" encryptionProviderName="" type="Microsoft.Practices.EnterpriseLibrary.Caching.Database.DataBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching.Database, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" name="Data Cache Storage" />
  </backingStores>
</cachingConfiguration>

0 个答案:

没有答案