C# 如何在.Net应用程序中使用Ignite Cache TextQuery

C# 如何在.Net应用程序中使用Ignite Cache TextQuery,c#,ignite,C#,Ignite,我使用的是ApacheIgnite2.7.6,我有一个.Net核心ClientServerIgnite应用程序。 我正在尝试从标有QueryTextField的Person Model字段有效负载中读取/搜索文本 点燃文档 人物模型: 代码: 使用(IIgniteClient=Ignition.StartClient(此.\u igniteClientConfiguration)) { //获取缓存配置 var cache=client.GetCache(cacheName); 尝试 { //查

我使用的是ApacheIgnite2.7.6,我有一个.Net核心ClientServerIgnite应用程序。 我正在尝试从标有QueryTextField的Person Model字段有效负载中读取/搜索文本

点燃文档

人物模型:

代码:

使用(IIgniteClient=Ignition.StartClient(此.\u igniteClientConfiguration))
{
//获取缓存配置
var cache=client.GetCache(cacheName);
尝试
{
//查询所有简历中有“硕士学位”的人。
var cursor=cache.Query(新文本查询(“个人”、“硕士学位”);//错误
//迭代结果。使用“foreach”循环将自动关闭光标。
foreach(游标中的var cacheEntry)
Console.WriteLine(cacheEntry.Value);
}
捕获(例外情况除外)
{
投掷;
}
}
但是我在
cache.Query(newtextquery(“Person”,“Master Degree”))上得到一个编译时错误

错误CS1503参数1:无法从转换 'Apache.Ignite.Core.Cache.Query.TextQuery'到 'Apache.Ignite.Core.Cache.Query.ScanQuery'

.Net中是否支持TextQuery? 如何解决上述错误


谢谢。

文本查询在Ignite瘦客户端中不受支持:

  • 改用胖客户端(.NET胖客户端支持
    TextQuery
  • 使用服务或计算作为解决方法(wrap
    TextQuery
    调用服务或计算任务,使用瘦客户端调用服务或任务)
public class Person: IConstructionCacheStore
    {
        [QueryTextField]
        public string Payload { get; set; }
    }
using (IIgniteClient client = Ignition.StartClient(this._igniteClientConfiguration))
            {
                //get cache config 
                var cache = client.GetCache<string, IConstructionCacheStore>(cacheName);
                try
                {
                    // Query for all people with "Master Degree" in their resumes.
                    var cursor = cache.Query(new TextQuery("Person", "Master Degree"));//Error

                    // Iterate over results. Using 'foreach' loop will close the cursor automatically.
                    foreach (var cacheEntry in cursor)
                        Console.WriteLine(cacheEntry.Value);
                }
                catch (Exception ex)
                {
                    throw;
                }

            }