C# 嵌套的泛型类型无效
我有这个方法,我想使泛型类型。这将允许该方法接受我传入的任何类模型,例如Blog模型、Post模型、Author模型等 因此,每当我调用这个方法时,我都会传入模型和查询C# 嵌套的泛型类型无效,c#,nest,C#,Nest,我有这个方法,我想使泛型类型。这将允许该方法接受我传入的任何类模型,例如Blog模型、Post模型、Author模型等 因此,每当我调用这个方法时,我都会传入模型和查询 public T SearchIndex(T model, string query) { var srchService = client.Search<model>(s => s .Query(q => q .Match(m => m.Query("hello")
public T SearchIndex(T model, string query)
{
var srchService = client.Search<model>(s => s
.Query(q => q
.Match(m => m.Query("hello"))
));
return T;
}
public T SearchIndex(T模型,字符串查询)
{
var srchService=client.Search(s=>s
.Query(q=>q
.Match(m=>m.Query(“hello”))
));
返回T;
}
我正在使用elasticsearch的NEST。我希望避免对所有模型重复代码。综上所述,T=>T是一种在此上下文中无效的类型。您的代码非常错误。您正在混合类型和变量。
具体来说,
T
是一个类型,不能返回类型。而model
是一个变量,不能将变量用作泛型类型参数
也许你想要这个
public T SearchIndex<T>(string query)
{
return client.Search<T>(s => s
.Query(q => q
.Match(m => m.Query("hello"))
));
}
public T SearchIndex(字符串查询)
{
返回client.Search(s=>s
.Query(q=>q
.Match(m=>m.Query(“hello”))
));
}
您需要使用客户端。搜索
,如果出现编译错误,请修复它们,使其满足T
上的约束。不过还有其他编译错误。我正在研究它们。