Interface IDistributedDictionary<TKey, TValue>
This interface contains methods and parameters for Distributed Dictionary.
Inherited Members
Assembly: Alachisoft.NCache.Client.dll
Syntax
public interface IDistributedDictionary<TKey, TValue> : IDictionary<TKey, TValue>, ICollection<KeyValuePair<TKey, TValue>>, IEnumerable<KeyValuePair<TKey, TValue>>, IEnumerable, IDistributedDataTypes, ILockable, INotifiable
Type Parameters
Name | Description |
---|---|
TKey | The type of keys in the Dictionary. |
TValue | The type of values in the Dictionary. |
Methods
Get(ICollection<TKey>)
Returns the values associated with the specified keys.
Declaration
ICollection<TValue> Get(ICollection<TKey> keys)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.ICollection<TKey> | keys | The keys whose values to get. |
Returns
Type | Description |
---|---|
System.Collections.Generic.ICollection<TValue> | Collection of values against the provided keys. |
Examples
The following code sample shows how to fetch multiple entries from distributed dictionary.
ICache cache = CacheManager.GetCache("demoClusteredCache");
string dataTypeName = "DistributedDictionary";
IDistributedDictionary<string, Product> dictionary = cache.DataTypeManager.GetDictionary<string, Product>(dataTypeName);
// Create list of keys to fetch corresponding values
List<string> keys = new List<string>();
keys.Add("Product:1001");
keys.Add("Product:1002");
keys.Add("Product:1003");
ICollection<Product> values = dictionary.Get(keys);
Insert(IDictionary<TKey, TValue>)
Insert elements with the provided keys and values in IDistributedDictionary.
Declaration
void Insert(IDictionary<TKey, TValue> entries)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IDictionary<TKey, TValue> | entries | Elements to be insert in IDistributedDictionary. |
Examples
The following code sample shows how to insert multiple entries in distributed dictionary.
ICache cache = CacheManager.GetCache("demoClusteredCache");
string dataTypeName = "DistributedDictionary";
IDistributedDictionary<string, Product> dictionary = cache.DataTypeManager.GetDictionary<string, Product>(dataTypeName);
// Create dictionary of new products to be added
IDictionary<string, Product> newProducts = new Dictionary<string, Product>();
Product[] products = FetchProducts();
foreach (var product in products)
{
// Add new products
string productKey = "$Product:{product.ProductID}";
newProducts.Add(productKey, product);
}
dictionary.Insert(newProducts);
Remove(ICollection<TKey>)
Removes the element with the specified keys from IDistributedDictionary.
Declaration
int Remove(ICollection<TKey> keys)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.ICollection<TKey> | keys | The keys of the elements to remove. |
Returns
Type | Description |
---|---|
System.Int32 | The number of items that were removed. |
Examples
The following code sample shows how to remove multiple entries in distributed dictionary.
ICache cache = CacheManager.GetCache("demoClusteredCache");
string dataTypeName = "DistributedDictionary";
IDistributedDictionary<string, Product> dictionary = cache.DataTypeManager.GetDictionary<string, Product>(dataTypeName);
// Create list of keys to remove
List<string> keysToRemove = FetchExpiredProducts();
int itemsRemoved = dictionary.Remove(keysToRemove);