我已经成功安装了 Membase Server,他们的“亚毫秒访问延迟”功能实际上是强迫我写这个问题,否则我已经十次切换到 MongoDB。所以问题是:我已经正确安装和配置了我的 Membase 服务器,现在我希望我的 .NET 客户端应用程序能够访问这个数据库,为此我使用了他们的 Enyim .NET 客户端。我编写了以下测试应用程序:
using System;
using System.Linq;
using System.Diagnostics;
using Membase;
using Membase.Configuration;
namespace CouchDB
{
class MainClass
{
public static void Main(string[] args)
{
var config = new MembaseClientConfiguration()
{
Bucket = "helloworld",
BucketPassword = "123",
NodeLocator = typeof(Enyim.Caching.Memcached.DefaultNodeLocator),
Transcoder = new Enyim.Caching.Memcached.DefaultTranscoder(),
KeyTransformer = new Enyim.Caching.Memcached.TigerHashKeyTransformer(),
PerformanceMonitorFactory = null // I'm on Mac OS X
};
config.SocketPool.MinPoolSize = 10;
config.SocketPool.MaxPoolSize = 20;
config.SocketPool.DeadTimeout = TimeSpan.FromSeconds(10);
config.SocketPool.ConnectionTimeout = TimeSpan.FromSeconds(5);
config.Urls.Add(new Uri("http://localhost:8091/pools/default"));
var client = new MembaseClient(config);
var spoon = client.Get<String>("Spoon");
Console.WriteLine(spoon);
}
}
}
当我尝试创建客户端时出现问题,发生的异常甚至不显示完整的堆栈,只告诉
“无法从源类型转换为目标类型”
在 System.Web.Script.Serialization.JavaScriptSerializer..ctor(resolver=null, registerConverters=false)