gpt4 book ai didi

LinqKit PredicateBuilder 与 EF 4 CPT 5 表关系?

转载 作者:行者123 更新时间:2023-12-02 08:52:13 24 4
gpt4 key购买 nike

我正在使用 LinqKit PredicateBuilder (http://www.albahari.com/nutshell/predicatebuilder.aspx) 作为执行搜索的方法。这就是建立关系的方式(Entity Framework 4 CPT 5 POCO):

public class MusicSheet
{
[Key]
public int ID { get; set; }
public string Title { get; set; }
public string Key { get; set; }

public virtual ICollection<Author> Authors { get; set; }
}

public class Author
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public string Bio { get; set; }

public virtual ICollection<MusicSheet> MusicSheets { get; set; }
}

我需要能够构建一个谓词来检查 MusicSheet(Title 包含特定搜索词)以及 Name > 或可能也包含该搜索词的作者的Bio。这是我目前拥有的:

var predicate = PredicateBuilder.False<MusicSheet>();
foreach (var term in terms)
{
string keyword = term;

predicate = predicate
.Or(s => s.Title.Contains(keyword));
// TODO Check for Author Name & Bio
}

有什么建议吗?非常感谢。

最佳答案

你尝试过这个吗:

var predicate = PredicateBuilder.False<MusicSheet>();
foreach (var term in terms)
{
string keyword = term;

predicate = predicate
.Or(s => s.Title.Contains(keyword) ||
s.Authors.Any (a => a.Name.Contains(keyword) || a.Bio.Contains(keyword)));
}

关于LinqKit PredicateBuilder 与 EF 4 CPT 5 表关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5096893/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com