2011-12-29 2 views
1

Я просто NuGetted ServiceStack.Redis 3.1.3, но в его зависимости он также получает ServiceStack.Common и ServiceStack.Text 3.1.6ServiceStack Redis Client Ожидая Старые версии ServiceStack.Common

Теперь, когда я строю приложение все это нормально.

Но при запуске приложения некоторые из методов клиента Redis выполняются правильно, но некоторые из них, например. (RedisClient.GetAllKeys) дает броски за исключением

Could not load file or assembly 'ServiceStack.Common, Version=1.0.4336.27526, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

Затем я удалил все конфигурации библиотеки DLL и NuGet packgage, и явно сделал NuGet ServiceStack.Common -Version 3.1.3 и получил его. Но затем, когда я попытался NuGet ServiceStack.Redis -Version 3.1.3, он автоматически удалил версию 3.1.3 Common и загрузил версию 3.1.6 !!!

Arrrhhh, я ненавижу интеллектуальных инсталляторов.

Как исправить это?

Известно ли издателю ServiceStack об этой проблеме?

ответ

2

Хорошо! Нашел вопрос.

Я пытался использовать ServiceStack из консольного приложения и был настроен на создание в режиме «ClientProfile».

ServiceStack внутренне ссылается на System.Web, который не был доступен во время выполнения.

Я переключил приложение на сборку, используя полный режим рамки, и теперь все работает нормально.

Спасибо anyways mythz!

0

Нет, ServiceStack не знал об этой проблеме. Хотя мы хотели бы знать, что вызывает это.

Я пробовал свежую установку ServiceStack.Redis и работает так, как ожидалось.

Чтобы удалить ваши библиотеки, вам нужно зайти в диспетчер пакетов NuGet и найти установленный пакет ServiceStack.Redis и нажать кнопку «Отключить». Это должно гарантировать, что следующая установка проекта загрузит его с веб-сайта NuGet и не будет повторно использовать ваш грязный dll-кеш.

Ошибка при условии, что у вас установлена ​​последняя версия NuGet и что ваши старые кеши NuGet очищаются. то есть найти и удалить папку NuGet/packages.

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