2016-04-04 8 views
1

In meinem Windows-Projekt laden, habe ich Enterprise Library Caching referierten 5.0.505, aber ich erhalte den folgenden Fehler auf Dienst startenKonnte Datei oder Assembly ‚Microsoft.Practices.EnterpriseLibrary.Caching

Service cannot be started. System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 
    File name: 'Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 

App.Config

<configSections> 

    <section name="cachingConfiguration" 
      type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
      requirePermission="true" /> 
    </configSections> 


<cachingConfiguration defaultCacheManager="Cache Manager"> 
    <cacheManagers> 
     <add name="Cache Manager" 
      type="Microsoft.Practices.EnterpriseLibrary.Caching.CacheManager, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
      expirationPollFrequencyInSeconds="60" 
      maximumElementsInCacheBeforeScavenging="50000" 
      numberToRemoveWhenScavenging="1000" 
      backingStoreName="NullBackingStore" /> 
    </cacheManagers> 
    <backingStores> 
     <add type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
      name="NullBackingStore" /> 
    </backingStores> 
    </cachingConfiguration> 

Antwort

2

Dies geschieht, wenn die referenzierte Assembly mit dem im bin Ordner nicht übereinstimmt.

Versuchen, diese zu Ihrer .config Datei:

<configuration> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Practices.EnterpriseLibrary.Caching" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-5.0.505.0" newVersion="5.0.505.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration> 
+0

Aber wie kann das sein, ich habe throw Nugget referierten, Doppel Ich überprüfte die Eigenschaften dieser referierten dlls – HaBo

+0

Stehen Sie mit mehreren Projekten zu arbeiten? Wenn dies der Fall ist, müssen Sie überprüfen, ob alle Projekte auf dieselbe Version verweisen. –

+0

Ja, es gibt ein abhängiges Projekt, das "5.0.414.0" verwendet, aber da dieses Dienstprojekt die neueste Version verwendet, dachte ich, dass dies den Vorrang haben würde? – HaBo

Verwandte Themen