2016-02-17 3 views
3

Не желая оставлять client.ncconf, лежащего в стороне от моего exe, я хочу, чтобы указать путь к файлу client.ncconf программно. Как я могу? Я использую NCache 4.4SP1 с открытым исходным кодом.Как программно загрузить определенный файл для конфигурации клиента NCache?

Методы, которые я использую, в основном Web.Caching.NCache.InitializeCache и Cache.Get.

ответ

1

Он выбирает конфигурацию от %NCHOME%InstallDir/config. Просто добавьте следующие строки в ваших AppSettings

<add key="InstallDir" value="C:\temp"/> 

Кроме того, все конфигурации клиента могут быть заданы программно с помощью CacheInitParams. Вы можете

namespace Alachisoft.NCache.Web.Caching 
{ 
    public class CacheInitParams : ICloneable 
    { 
     public CacheInitParams(); 

     public string BindIP { get; set; } 
     public ClientCacheSyncMode ClientCacheSyncMode { get; set; } 
     public int ClientRequestTimeOut { get; set; } 
     public int CommandRetries { get; set; } 
     public int CommandRetryInterval { get; set; } 
     public int ConnectionRetries { get; set; } 
     public int ConnectionTimeout { get; set; } 
     public string DefaultReadThruProvider { get; set; } 
     public string DefaultWriteThruProvider { get; set; } 
     public bool LoadBalance { get; set; } 
     public CacheMode Mode { get; set; } 
     [Obsolete("This property is deprecated. Please use the 'ServerList' property instead.", false)] 
     public int Port { get; set; } 
     public SecurityParams PrimaryUserCredentials { get; set; } 
     public int RetryConnectionDelay { get; set; } 
     public int RetryInterval { get; set; } 
     public SecurityParams SecondaryUserCredentials { get; set; } 
     [Obsolete("This property is deprecated. Please use the 'ServerList' property instead.", false)] 
     public string Server { get; set; } 
     public CacheServerInfo[] ServerList { get; set; } 

     public object Clone(); 
    } 
} 
+0

Знаете ли вы, в какое время он оценивает переменную '% NCHOME%'? Было бы достаточно установить переменную окружения в начале программы, чтобы изменить местоположение? –

+1

Я отредактировал ответ. –

+0

Извините, Basit, но 'App.config' не подходит для« программно ». Я знаю только каталог, содержащий 'client.ncconf' из параметров командной строки моего приложения. –