如何在 .Net 应用程序中使用 Ignite Cache TextQuery
How to use Ignite Cache TextQuery in .Net Application
我正在使用 Apache Ignite v2.7。6.And我有一个 .Net 核心 ClientServer Ignite 应用程序。
我正在尝试 read/search 来自标有 QueryTextField 的 Person Model 字段 Payload 的文本。
TextQuery Ignite 文档。
人物模型:
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;
}
}
但我在 cache.Query(new TextQuery("Person", "Master Degree"));
处遇到编译时错误
喜欢
Error CS1503 Argument 1: cannot convert from
'Apache.Ignite.Core.Cache.Query.TextQuery' to
'Apache.Ignite.Core.Cache.Query.ScanQuery<string,
ConstructionModels.IConstructionCacheStore>'
.Net 是否支持 TextQuery?
如何解决以上错误?
谢谢。
TextQuery
在 Ignite 瘦客户端中不受支持:
- 改为使用胖客户端(.NET 胖客户端支持
TextQuery
)
- 使用服务或计算作为解决方法(将
TextQuery
调用包装在服务或计算任务中,使用瘦客户端调用服务或任务)
我正在使用 Apache Ignite v2.7。6.And我有一个 .Net 核心 ClientServer Ignite 应用程序。 我正在尝试 read/search 来自标有 QueryTextField 的 Person Model 字段 Payload 的文本。
TextQuery Ignite 文档。
人物模型:
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;
}
}
但我在 cache.Query(new TextQuery("Person", "Master Degree"));
处遇到编译时错误
喜欢
Error CS1503 Argument 1: cannot convert from 'Apache.Ignite.Core.Cache.Query.TextQuery' to 'Apache.Ignite.Core.Cache.Query.ScanQuery<string, ConstructionModels.IConstructionCacheStore>'
.Net 是否支持 TextQuery? 如何解决以上错误?
谢谢。
TextQuery
在 Ignite 瘦客户端中不受支持:
- 改为使用胖客户端(.NET 胖客户端支持
TextQuery
) - 使用服务或计算作为解决方法(将
TextQuery
调用包装在服务或计算任务中,使用瘦客户端调用服务或任务)