[英]Umbraco 8: Get reference to DocumentType definition in WebAPI class
背景:
我有一个从 JS 调用的 WebAPI 端点,它从我的数据库中获取Book
项目。 我想在 LINQ 查询中根据input
变量(例如 ISBN)进行过滤。 为此,我需要在我的UmbracoAPIController
class 中导入 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?)
注意:请不要告诉我,除非您有明确、更好的选择,否则我只是在以“错误”的方式做所有事情,谢谢。
我不知道这是否会有所帮助,但我不做直接转换(甚至没有尝试过),只是直接使用默认属性值,例如
var books = parent.Children().Where(page => page.HasProperty("Isbn") &&
page.HasValue("Isbn") &&
page.Value<string>("Isbn") == Isbn);
不过有兴趣了解直接演员是如何工作的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.