Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net redis get list,其键以开头_.net_Redis - Fatal编程技术网

.net redis get list,其键以开头

.net redis get list,其键以开头,.net,redis,.net,Redis,我将一些键设置为Redis,并将键格式化为“userId barcodeNo” 例: 现在我需要得到一个列表,其中的键以“userId”开头 我可以通过contain char(*)获取密钥列表- 但是,我如何获取以userId开头的键的项目呢 我需要这样的东西:Get*UserId* 在.Net中,这是我的代码 using (var ioc = new Ioc()) { var client = ioc.Resolve<IRedis

我将一些键设置为Redis,并将键格式化为“userId barcodeNo”

例:

现在我需要得到一个列表,其中的键以“userId”开头

我可以通过contain char(*)获取密钥列表-

但是,我如何获取以userId开头的键的项目呢

我需要这样的东西:
Get*UserId*

在.Net中,这是我的代码

        using (var ioc = new Ioc())
        {
            var client = ioc.Resolve<IRedisClientsManager>().GetClient();
            var key = string.Format("*{0}*", User.Identity.GetUserId());
            var list = client.Get<Coupon>(key);
        }
使用(var ioc=new ioc())
{
var client=ioc.Resolve().GetClient();
var key=string.Format(“*{0}*”,User.Identity.GetUserId());
var list=client.Get(key);
}
它返回null


redis是否支持此功能?

您可以使用MGET一次获取所有密钥。因此,您可以在一个调用中获取键,然后在另一个调用中捕获值。

您可以使用MGET一次获取所有密钥。因此,您可以在一个调用中获取键,然后在另一个调用中捕获值。

您可以使用MGET一次获取所有密钥。因此,您可以在一个调用中获取键,然后在另一个调用中捕获值。

您可以使用MGET一次获取所有密钥。因此,您可以在一个调用中获取键,然后在另一个调用中捕获值。

好的,我在.Net服务StackRedis包中找到了解决方案

 using (var ioc = new Ioc())
    {
        var client = ioc.Resolve<IRedisClientsManager>().GetClient();
        var patern= string.Format("*{0}*", User.Identity.GetUserId());

        var keylist = c.SearchKeys("*" + patern + "*");
        var list = client.GetAll<Coupon>(keylist);
    }
使用(var ioc=new ioc())
{
var client=ioc.Resolve().GetClient();
var patern=string.Format(“*{0}*”,User.Identity.GetUserId());
var keylist=c.SearchKeys(“*”+patern+“*”);
var list=client.GetAll(keylist);
}

首先,我使用SearchKeys方法查找适合我父亲的项目。它返回一个keylist,我无法将keylist传递给GetAll方法。

好的,我在.Net ServisStackRedis包中找到了解决方案

 using (var ioc = new Ioc())
    {
        var client = ioc.Resolve<IRedisClientsManager>().GetClient();
        var patern= string.Format("*{0}*", User.Identity.GetUserId());

        var keylist = c.SearchKeys("*" + patern + "*");
        var list = client.GetAll<Coupon>(keylist);
    }
使用(var ioc=new ioc())
{
var client=ioc.Resolve().GetClient();
var patern=string.Format(“*{0}*”,User.Identity.GetUserId());
var keylist=c.SearchKeys(“*”+patern+“*”);
var list=client.GetAll(keylist);
}

首先,我使用SearchKeys方法查找适合我父亲的项目。它返回一个keylist,我无法将keylist传递给GetAll方法。

好的,我在.Net ServisStackRedis包中找到了解决方案

 using (var ioc = new Ioc())
    {
        var client = ioc.Resolve<IRedisClientsManager>().GetClient();
        var patern= string.Format("*{0}*", User.Identity.GetUserId());

        var keylist = c.SearchKeys("*" + patern + "*");
        var list = client.GetAll<Coupon>(keylist);
    }
使用(var ioc=new ioc())
{
var client=ioc.Resolve().GetClient();
var patern=string.Format(“*{0}*”,User.Identity.GetUserId());
var keylist=c.SearchKeys(“*”+patern+“*”);
var list=client.GetAll(keylist);
}

首先,我使用SearchKeys方法查找适合我父亲的项目。它返回一个keylist,我无法将keylist传递给GetAll方法。

好的,我在.Net ServisStackRedis包中找到了解决方案

 using (var ioc = new Ioc())
    {
        var client = ioc.Resolve<IRedisClientsManager>().GetClient();
        var patern= string.Format("*{0}*", User.Identity.GetUserId());

        var keylist = c.SearchKeys("*" + patern + "*");
        var list = client.GetAll<Coupon>(keylist);
    }
使用(var ioc=new ioc())
{
var client=ioc.Resolve().GetClient();
var patern=string.Format(“*{0}*”,User.Identity.GetUserId());
var keylist=c.SearchKeys(“*”+patern+“*”);
var list=client.GetAll(keylist);
}

首先,我使用SearchKeys方法查找适合我父亲的项目。它返回一个keylist,我无法将keylist传递给GetAll方法。

正如您所说,redis支持它。(您可以使用类似于
KEYS-userId:
)问题是,您的c#库是否支持它。client.Get(key)似乎是错误的界面。尽可能避免使用
——总是喜欢它的礼貌表亲
SCAN
(),正如您所说,redis支持它。(您可以使用类似于
KEYS-userId:
)问题是,您的c#库是否支持它。client.Get(key)似乎是错误的界面。尽可能避免使用
——总是喜欢它的礼貌表亲
SCAN
(),正如您所说,redis支持它。(您可以使用类似于
KEYS-userId:
)问题是,您的c#库是否支持它。client.Get(key)似乎是错误的界面。尽可能避免使用
——总是喜欢它的礼貌表亲
SCAN
(),正如您所说,redis支持它。(您可以使用类似于
KEYS-userId:
)问题是,您的c#库是否支持它。client.Get(key)似乎是错误的界面。尽可能避免使用
-始终选择其礼貌的近亲
扫描
()