[英]Getting list of properties of a DataType from current page
晚上好!
我目前正在我的應用程序的后端工作,我需要獲取某個數據類型的所有屬性的列表,但只有當前頁面中的屬性。
listFiltersCms = _umbraco.ContentAtRoot().SelectMany(c => c.Descendants<DataFilters>()).ToList();
上面的這一行收集了所有頁面的所有過濾器,但我想要來自特定頁面的過濾器(可以是 currentPage)。
我嘗試過這樣的事情:
var listFiltersCms = _umbraco.AssignedContentItem.SelectMany(c => c.Descendants<DataFilter>()).ToList();
但沒有任何運氣:(有什么想法嗎?
不完全確定您所說的“我的應用程序的后端”是什么意思——您是在 Umbraco 內部還是在公共網站上?
我問是因為有一種相當簡單的方法可以獲取有關特定數據類型的所有信息,但它並不是真的要在面向公眾的網站上使用。 可以,但它可能會對系統造成負擔,因為我認為它直接查詢數據庫,這並不理想。
無論如何,您可能想看看 DataTypeService: https://our.umbraco.com/Documentation/Reference/Management/Services/DataTypeService/Index-v8
在這里你可以看到你有哪些使用它的選項(不是很解釋,但我發現了一些你可能會研究的方法): https://our.umbraco.com/apidocs/v8/csharp/api/Umbraco。 Core.Services.IDataTypeService.html
如果您決定在會有大量請求的情況下使用該服務,則可以考慮緩存 output 以備用數據庫。
我解決此問題的方法是在正確的 model 中獲取頁面。 就我而言,我所要做的就是: (_umbraco.AssignedContentItem as PageModel).FilterCustomMeasures;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.