我刚接触 Redis和ServiceStack.Redis几个小时,并试图学习它。以前我使用过 ASP.NET 缓存,我在其中存储 DataSet 以在需要时进行缓存和检索。
我正在尝试使用ServiceStack.Redis完成相同的操作,但它引发了异常:
An unhandled exception of type 'System.StackOverflowException' occurred in ServiceStack.Text.dll
这是代码
static void Main(string[] args)
{
var redisClient = new RedisClient("localhost");
DataSet ds = new DataSet();
ds.Tables.Add("table1");
ds.Tables[0].Columns.Add("col1", typeof(string));
DataRow rw = ds.Tables[0].NewRow();
rw[0] = "samtech";
ds.Tables[0].Rows.Add(rw);
//following line raises exception
redisClient.Set<System.Data.DataSet>("my_ds", ds, DateTime.Now.AddSeconds(60));
}
有人可以告诉我我做错了什么吗?
我可以只将自定义类存储到 Redis 而不是 DataSet 吗?