C# Umbraco 8:获取对WebAPI类中DocumentType定义的引用 Q) 如何在umbracapicontroller类中获取对DocumentType定义的引用,以便对属性执行LINQ查询?
背景:C# Umbraco 8:获取对WebAPI类中DocumentType定义的引用 Q) 如何在umbracapicontroller类中获取对DocumentType定义的引用,以便对属性执行LINQ查询?,c#,asp.net-web-api,reflection,umbraco,umbraco8,C#,Asp.net Web Api,Reflection,Umbraco,Umbraco8,背景: 我从JS调用了一个WebAPI端点,它从我的数据库中获取Book项。我想在我的LINQ查询中根据输入变量(如ISBN)进行筛选。为此,我需要在我的umbracapicontroller类中导入DocumentType定义 尝试下面的内容,其中Book是我想要转换的类型: var parent = Umbraco.ContentAtRoot().First().Children().FirstOrDefault(x => x.Name == "Booklist")
我从JS调用了一个WebAPI端点,它从我的数据库中获取
Book
项。我想在我的LINQ查询中根据输入变量(如ISBN)进行筛选。为此,我需要在我的umbracapicontroller
类中导入DocumentType定义
尝试下面的内容,其中Book
是我想要转换的类型:
var parent = Umbraco.ContentAtRoot().First().Children().FirstOrDefault(x => x.Name == "Booklist");
if (parent != null)
{
var isbn = HttpContext.Current.Request.Params["isbn"];
var books = parent.Children().Cast<Book>().Where(b => b.Isbn == isbn);
foreach (var book in books)
{
// Do something here....
}
}
The type or namespace name 'Book' could not be found (are you missing a using directive or an assembly reference?)
注意:请不要告诉我我做的每件事都是“错误”的,除非你有一个明确的、更好的选择,谢谢。我不知道这是否有帮助,但我不做直接播放(甚至没有尝试过),只使用默认属性值direct,例如
var books = parent.Children().Where(page => page.HasProperty("Isbn") &&
page.HasValue("Isbn") &&
page.Value<string>("Isbn") == Isbn);
var books=parent.Children().Where(page=>page.HasProperty(“Isbn”)&&
第页价值(“Isbn”)&&
页码值(“Isbn”)==Isbn);
但我很想知道直接演员是如何工作的