作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试实现类似于 described here过滤模型 hotchocolate代码优先的方法。如果至少有一位 Actor 符合某些标准,我需要过滤电影。模型看起来像这样:
public class Movie
{
public IList<Actor> Actors { get; set; }
}
public class Actor { }
public class MovieTypeDef : ObjectType<Movie>
{
protected override void Configure(IObjectTypeDescriptor<Movie> descriptor)
{
descriptor.Field(x => x.Actors)
.Type<NonNullType<ListType<NonNullType<ActorTypeDef>>>>();
}
}
public class ActorTypeDef : ObjectType<Actor> { }
public class Query
{
public IList<Movie> Movies()
{
return new List<Movie>();
}
}
public class QueryTypeDef : ObjectType<Query>
{
protected override void Configure(IObjectTypeDescriptor<Query> descriptor)
{
descriptor.Field(x => x.Movies())
.Type<NonNullType<ListType<MovieTypeDef>>>()
.UseFiltering<MoviesFileringTypeDef>();
}
}
public class MoviesFileringTypeDef : FilterInputType<Movie>
{
protected override void Configure(IFilterInputTypeDescriptor<Movie> descriptor)
{
descriptor.Filter(x => x.Actors) // compilation error
}
}
MoviesFileringTypeDef
添加自定义过滤器因为它只允许使用
Movie
的属性类,那里不接受收藏。
最佳答案
I also faced a similar kind of issue while I was trying to apply a filter on the parent entity based on the child entity field. I believe in your case you need to apply a filter in your MovieTypeDef also with QueryType as below:-
public class MovieTypeDef : ObjectType<Movie>
{
protected override void Configure(IObjectTypeDescriptor<Movie> descriptor)
{
descriptor.Field(x => x.Actors)
.Type<NonNullType<ListType<NonNullType<ActorTypeDef>>>>()
.UseFiltering<YourModel>();;
}
}
After this change, you can apply a filter on a nested level also as you can apply with the parent level.
关于c# - 基于子集合的父级热巧克力自定义过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60898798/
我以前使用过像 Netbeans 和 eclipse 这样的 IDE。 我在 friend 的电脑上下载了“Visual Studio Express 2013 for windows desktop
我正在尝试弄清楚如何在 GBA 大小的 EZ Flash 3 合 1 卡中对 PSRAM 进行编程。基本上重复 GBA Exploader 和其他程序所做的事情。 如果我选择一个 block 并对其进
Filter1=re.findall(r'',PageSource) Filter2=re.findall(r'',PageSource) Filter3=re.findall(r'(.*?).*?'
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许在 Stack Overflow 上提出有关通用计算硬件和软件的问题。您可以编辑问题,使其成为
我是一名优秀的程序员,十分优秀!