在Xamarin Android应用中使用Azure Redis缓存

时间:2016-05-07 19:11:03

标签: .net azure redis xamarin.android stackexchange.redis

我想在我的Android应用中使用Azure Redis缓存,我需要先根据此处的说明添加StackExchange.Redis nuget包:https://azure.microsoft.com/en-us/documentation/articles/cache-dotnet-how-to-use-azure-redis-cache

但是,当我这样做时,我在包管理器控制台中收到以下错误消息:

  

安装失败。回滚...安装包:无法安装   package' StackExchange.Redis 1.0.488'。您正在尝试安装此功能   打包成一个针对MonoAndroid,Version = v4.4'的项目,但是   packag e不包含任何程序集引用或内容文件   与该框架兼容的。有关更多信息,请联系   包裹作者。在行:1字符:16   + Install-Package<<<< StackExchange.Redis       + CategoryInfo:NotSpecified:(:) [Install-Package],InvalidOperationException       + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

这可能是什么原因?我试图添加与MonoAndroid不兼容的nuget包吗?

2 个答案:

答案 0 :(得分:2)

StackExchange.Redis基于完整的.NET 4.x.这意味着在Windows上运行.NET代码,您无法在Android上运行此组件。此组件旨在用于在Azure或本地服务器上运行的服务器端服务(Web API,Azure移动应用程序服务等),但不能用于客户端(Android或iOS)中的C#代码。 甚至StackExchange.Redis.Mono(https://www.nuget.org/packages/StackExchange.Redis.Mono/)也可以在Mac上使用,而不是从Android / iOS使用。 对于移动应用(Android)中的客户端缓存,我建议使用类似Akavache的内容:https://github.com/akavache/Akavache

答案 1 :(得分:0)

2017年更新

如果有人查看此内容,与此同时,StackExchange.Redis包在Xamarin Android下使用.NETStandard 1.5配置文件工作。我没有运行很多测试但是能够成功安装软件包,连接到本地运行的服务并执行基本命令。