是否有.NET使用的KeyValue存储?

时间:2010-10-21 09:45:52

标签: c# store key-value

我正在寻找支持C#的keyvalue商店,但我发现其中大部分是由Java实现的。有人可以向我推荐一些吗?如果它非常轻,即出现在图书馆中,它将是超级的。谢谢!

8 个答案:

答案 0 :(得分:11)

Dictionary<key,Value>  

               http://msdn.microsoft.com/en-us/library/xfhwa508.aspx

KeyValuePair<string, string>

              http://msdn.microsoft.com/en-us/library/5tbh8a42.aspx

答案 1 :(得分:8)

如果你想要一个进程内的持久键值存储(比如Berkeley Db),那么看一下PersistentDictionary,它是ManagedEsent项目的一部分。持久字典看起来像普通字典,但由数据库支持。如果您使用当前源构建,那么您将获得Linq支持,这可以让您进行查询。

答案 2 :(得分:5)

如果您指的是NoSQL商店,What NoSQL solutions are out there for .NET?会列出这些商品。

答案 3 :(得分:3)

根据您的要求,有很多。

另一个你可以考虑的是System.Runtime.Caching namespace,它已被添加到.NET 4.0中。

答案 4 :(得分:2)

Redis非常出色。还有令人惊讶的c#redis客户端ServiceStackRedis也可用。它非常轻巧。

如果您想在Windows上尝试redis,可以找到Windows版本here

答案 5 :(得分:2)

>  I am looking up keyvalue stores that support C#

如果您正在寻找原生.NET密钥值存储,请尝试NCache。它使用C#构建。我认为没有别的。

它提供的不仅仅是一个简单的.net key value store。你可以坚持只保留键和值。

Cache cache = NCache.InitializeCache("CacheName");
cache.Add("Key", "Value");
object value = cache.Get("Key");

答案 6 :(得分:1)

这是你所说的关键值对...就像一个哈希表()

Hashtable = ht = new HashTable();

Dictionary<double,string> d1 = new Dictionary<double,string>();

Dictionary<String,string> d2 = new  Dictionary<string,string>();

答案 7 :(得分:1)

GetCache是​​.Net 4.5中开发的一个非常简单的键值内存缓存。 可以从Nuget下载服务器和客户端库。

http://www.nuget.org/packages/GetCacheServer/

http://www.nuget.org/packages/GetCacheClient/