Libreria aziendale CacheFactory.GetCacheManager genera un riferimento nullo
-
08-06-2019 - |
Domanda
Sto cercando di convertire un'applicazione utilizzando la versione 1.1 del blocco Enterprise Library Caching alla versione 2.0.Penso che il vero problema sia che la configurazione per i diversi pezzi EntLib è stata suddivisa in più file.Apparentemente, questo veniva gestito da ConfigurationManagerSectionHandler, ma ora è obsoleto a favore dei meccanismi di configurazione incorporati in .NET 2.0.
Ho difficoltà a trovare un buon esempio di come eseguire questa suddivisione dei file di configurazione, soprattutto nel contesto di EntLib.Qualcun altro si è occupato di questo?
Soluzione
Sembra che fosse la configurazione.Ho trovato un buon esempio del normale approccio a un file qui: http://www.devx.com/dotnet/Article/31158/0/page/2
Usare un file di configurazione esterno è in realtà banale una volta che ne hai capito la sintassi.Ex.:
Nel file Web.config:
<cachingConfiguration configSource="cachingconfiguration.config" />
Nel file cachingconfiguration.config:
<?xml version="1.0" encoding="utf-8"?> <cachingConfiguration defaultCacheManager="Default Cache Manager"> <backingStores> <add name="inMemory" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching" /> </backingStores> <cacheManagers> <add name="Default Cache Manager" expirationPollFrequencyInSeconds = "60" maximumElementsInCacheBeforeScavenging ="50" numberToRemoveWhenScavenging="10" backingStoreName="inMemory" /> </cacheManagers> </cachingConfiguration>
Spero che questo aiuti qualcuno!