如果我們可以作一個假設的包是假期計劃的子項,然後你,那麼你可以設置自己的軟件包列表到的數據源:
Sitecore.Context.Item.Children
然後,爲了創建鏈接每個包項目的細節,你可能會做這樣的事情:
// ... in the itemdatabound event of the listview/repeater etc etc ...
var link = (Hyperlink)e.Item.FindControl("MyHyperlinkControl");
var currentItem = (Item)e.Item.DataItem;
link.NavigateUrl = LinkManager.GetItemUrl(currentItem);
// ... all the other binding related activity ...
我認爲通過jQuery是使用超鏈接的URL中使用的load()方法來加載此內容的典型方式,並指定目標網頁上的定位點:
$('#result').load('holidays/package1 #PackageDetailsContainer');
http://api.jquery.com/load/
但是,如果你真的想選擇一個關鍵項目,你可以通過任何使用LINQ它們的屬性或字段篩選Sitecore的項目。 例如:
var selectedPackageKey = Request.QueryString["packageKey"];
var parentFolderId = "{xxxx.xxxxxxx.xxxxxxxx.xxxxxxxxx}";
var parentFolderItem = Sitecore.Context.Database.GetItem(parentFolderId);
var selectItem = parentFolderItem.Children.
Where(i => i["Key field"] == selectedPackageKey).
FirstOrDefault();