2013-02-20 3 views
3

Я пытался из ServiceStack.Redis библиотеки для подключения к Redis и по какой-то причине я не могу создать экземпляр класса RedisClient всякий раз, когда я делаю ...метод GetEvalStr не реализован ServiceStack.Redis RedisClient

RedisClient redisClient = new RedisClient(); 

Я получаю ...

Method 'GetEvalStr' in type 'ServiceStack.Redis.RedisClient' from assembly 'ServiceStack.Redis, Version=3.9.37.0, Culture=neutral, PublicKeyToken=null' does not have an implementation. 

Самая странная часть - это мешает мне отлаживать метод, содержащий эту строку. т. е. когда я пытаюсь вызвать метод, который содержит его ...

Cache.Get(key) 

Я не могу пройти через него.

Любые идеи?

FYI im использует последнюю версию, доступную на NuGet (версия 3.9.37).

ответ

3

У вас есть грязная dll, где вы используете старую версию ServiceStack.Redis.dll, которая не соответствует реализации в версии v3.9.37 от ServiceStack.Interfaces.dll.

Прежде всего убедитесь, что все компоненты ServiceStack обновлены. Если это не сработает, удалите все существующие пакеты NuGet ServiceStack (т. Е. Удалите папку /packages и файл packages.config) и снова установите их из NuGet.

+1

Этот ответ верный, но не всегда полезно обновлять последние компоненты ServiceStack. Я усердно изучил, как только я обновился до 'ServiceStack 3.9.69', мои сборки не удались. После устранения неполадок я понимаю, что «ServiceStack.ContainerAdapter.Ninject» не поддерживает 'ServiceStack.Common' больше, чем' 3.9.59'. В конце концов мне пришлось отменить все мои обновления. –

Смежные вопросы