NCache中的多个活动结果集

时间:2016-06-14 08:44:53

标签: c# .net ncache

自从过去几周以来,我一直在评估NCache。 Mu问题特定于查询缓存数据的技术。我正在寻找类似于下面提到的ADO.NET技术的东西。要求一次提供多个查询并逐个遍历结果集。

从数据库中以上述方式获取的ADO.NET代码如下所示。

connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password";
            sql = "Select top 2 * from product; select top 2 * from ordermaster; select top 2 * from orderdetails";

            sqlCnn = new SqlConnection(connetionString);
            try
            {
                sqlCnn.Open();
                sqlCmd = new SqlCommand(sql, sqlCnn);
                SqlDataReader sqlReader = sqlCmd.ExecuteReader();
                while (sqlReader.Read())
                {
                    MessageBox.Show ("From first SQL - " + sqlReader.GetValue(0) + " - " + sqlReader.GetValue(1));
                }

                sqlReader.NextResult();

                while (sqlReader.Read())
                {
                    MessageBox.Show("From second SQL - " + sqlReader.GetValue(0) + " - " + sqlReader.GetValue(1));
                }

                sqlReader.NextResult();

                while (sqlReader.Read())
                {
                    MessageBox.Show("From third SQL - " + sqlReader.GetValue(0) + " - " + sqlReader.GetValue(1));
                }

                sqlReader.Close();
                sqlCmd.Dispose();
                sqlCnn.Close();
            }

我们可以在NCache中做类似的事情来查询缓存数据吗?

1 个答案:

答案 0 :(得分:0)

此处列出了NCache中支持的查询;

http://www.alachisoft.com/resources/docs/ncache/help/oql-syntax.html

除此之外, NCache不支持NextResult命令,但你可以拥有自己的实现来方便你的应用

  

// Psuedo Code

     
      
  1. 创建查询列表
  2.   
  3. 创建包装NCache查询客户端API的包装器
  4.   
  5. 以异步方式执行这些查询
  6.   
  7. 在Wrapper中创建NextResult功能
  8.   
  9. 在异步线程上执行同步以阻止或运行NextResult方法(Joins或Mutex.wait e.t.c)以等待异步查询操作方法返回
  10.   
  11. 做你想做的事:)
  12.   

它是一个自定义实现。你实际上并不需要这样做,因为NCache是​​完全内存的,因此SQL查询应该非常快。

您可以在Alachisoft Forums

上发出功能请求
相关问题