簡體   English   中英

有沒有一種方法可以創建包含1個內容類型的子項目的無序列表

[英]Is there a way to create a unordered list with subitems from 1 content-type

我想使用2sic Content創建像如下的組織圖: https ://codepen.io/bernardoantunes/pen/inrbh。

我想用以下字段創建內容類型“ organogram”:標題為字符串父項為實體(類型為Organogram)描述為字符串鏈接為超鏈接

使用這種內容類型,我會添加一些可以創建子元素的元素。 例如:-根-子1(在“父”字段中選擇了根)-子2(在“父”字段中選擇了根)-子3(在“父”字段中選擇了子2)

可以使用2sic內容應用程序完成此操作嗎?

我創建了內容類型並添加了一些元素。 創建一個剃刀模板,然后給出一個錯誤。 運算符'=='不能應用於類型為System.Collections.Generic.List和ToSic.SexyContent.DynamicEntity的操作數

剃刀模板:

@using Connect.Koi;
@{
var first = AsDynamic(Data["Default"]).First();
var all = AsDynamic(Data["Default"]);
}
<div>@first.Title</div>  
var children = all.Where(x => x.parent == first).ToList();
<div>@children.Count</div>

基本上, AsDynamic(...)創建包裝的實體對象,而...parent為您提供相關項目的列表(因為它可能有多個父項)。 如果這是您要使用的代碼,我建議1件事。

  1. .parent (可能應該是.Parent)上,使用[0]或.FirstOrDefault(),所以它是.Parent.FirstOrDefault() == first @using System.Linq記住通過@using System.Linq啟用LINQ。
  2. 不要比較AsDynamic對象,因為它們將是不同的對象。 最好使用.EntityId或其他方式比較ID。

因此,您得到的比較可能是.Parent[0].EntityId == first.EntityId

我不喜歡您的解決方案的想法是,默認列表中的第一項將以某種方式成為重要的。 這感覺不對,但我不知道您的整體解決方案...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM