2015-02-09 20 views
8

Cố gắng sử dụngChuyển đổi String [] array để RedisKey [] array

KeyDelete(RedisKey[] keys, CommandFlags flags = CommandFlags.None); 

Tôi có mảng các string [], Tôi không nhìn thấy bất kỳ ví dụ ra có khi tôi tìm kiếm để chuyển đổi các kiểu dữ liệu. Tôi thậm chí không chắc chắn làm thế nào để tạo ra một RedisKey mới.

Cố gắng

RedisKey redisKey = new RedisKey("d"); 

trên không hoạt động, bất cứ đề nghị?

+0

Có chuyển đổi ẩn được xác định giữa 'RedisKey' và' string'. Nếu bạn muốn một khóa có giá trị "d", chỉ cần thực hiện gán trực tiếp, 'RedisKey redisKey =" d "' https://github.com/StackExchange/StackExchange.Redis/blob/master/Docs/KeysValues.md –

Trả lời

19

Từ source codeRedisKey có một chuyển đổi ngầm từ string:

/// <summary> 
/// Create a key from a String 
/// </summary> 
public static implicit operator RedisKey(string key) 
{ 
    if (key == null) return default(RedisKey); 
    return new RedisKey(null, key); 
} 

Vì vậy, bạn có thể tạo một bởi

RedisKey key = "hello"; 

hoặc

var key = (RedisKey)"hello"; 

Để chuyển đổi một số IEnumerable<string> thành RedisKey[], bạn có thể làm:

var keys = strings.Select(key => (RedisKey)key).ToArray(); 
Các vấn đề liên quan