protobuf网转码器的EnyimMemcached问题(protobuf-net transco

2019-07-04 07:23发布

从protobuf网到enyim缓存转码器弃用? 分布式缓存与protobuff网

设置我的Enyim配置就像这样的app.config导致一个错误,当我尝试启动MemcachedClient()使用相同

码器类型= “ProtoBuf.Caching.Enyim.NetTranscoder”/

System.TypeInitializationException was unhandled by user code
HResult=-2146233036
Message=The type initializer for 'Enyim.Caching.MemcachedClient' threw an exception.
Source=Enyim.Caching
TypeName=Enyim.Caching.MemcachedClient
StackTrace:
   at Enyim.Caching.MemcachedClient..ctor()
   at Global.asax.cs:line 31
InnerException: System.Configuration.ConfigurationErrorsException
   HResult=-2146232062
   Message=The value of the property 'transcoder' cannot be parsed. The error is: Object reference   not set to an instance of an object. (\web.config line 207)
   Source=System.Configuration
   BareMessage=The value of the property 'transcoder' cannot be parsed. The error is: Object reference not set to an instance of an object.
   StackTrace:
        at System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, SectionInput input, Boolean isTrusted, FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult)
        at System.Configuration.BaseConfigurationRecord.Evaluate(FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult, Boolean getLkg, Boolean getRuntimeObject, Object& result, Object& resultRuntimeObject)
        at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)
        at System.Configuration.BaseConfigurationRecord.GetSection(String configKey)
        at System.Web.HttpContext.GetSection(String sectionName)
        at System.Web.Configuration.HttpConfigurationSystem.GetSection(String sectionName)
        at System.Web.Configuration.HttpConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection(String configKey)
        at System.Configuration.ConfigurationManager.GetSection(String sectionName)
        at Enyim.Caching.MemcachedClient..cctor() in MemcachedClient.cs:line 25
   InnerException: 

通过的NuGet和使用的是最新的版本同时安装。

Answer 1:

是(咳嗽),当然这是有! 只看到 “的protobuf-net.Enyim”,即

PM>安装,包protobuf的net.Enyim

(或使用GUI客户端)

要初始化,您需要将代码转换器配置为实例ProtoBuf.Caching.Enyim.NetTranscoder (按照原来的指令)。 如果您是通过配置这样做,请注意,这种类型的组件是现在protobuf-net.Enyim 。 如果我猜的配置文件使用标准的符号,那么这意味着你需要指定(在config):

<transcoder type="ProtoBuf.Caching.Enyim.NetTranscoder,protobuf-net.Enyim" />

原来的答案:

该enyim转码器目前不在的NuGet; 然而-我现在将承担起自己复活,通过增加一个独立的NuGet包(参考EnyimMemcached和protobuf网),增加了这一回。

随机的问题...你可以在一个二进制memcached的下载进行测试指向我任何机会呢?

这已经落后的一个原因是,当我第一次写的enyim转码器,memcached的是一个简单的“运行此” -但我最后一次看它已经走了所有“enterprisey”,我无法追查一个简单的包,刚把memcached服务器。 如果你能告诉我在哪里现在是,我会得到它的工作本周末。



文章来源: protobuf-net transcoder for EnyimMemcached problems