我想使用後面的代碼創建一個項目到sitecore。Sitecore創建包含字段[]的項目
我發現這段代碼,它工作得很好。
public void CreateItem(String itmName)
{
//Again we need to handle security
//In this example we just disable it
using (new SecurityDisabler())
{
//First get the parent item from the master database
Database masterDb = Sitecore.Configuration.Factory.GetDatabase("master");
Item parentItem = masterDb.Items["/sitecore/content/SOHO/Settings/Metadata/Project"];
//Now we need to get the template from which the item is created
TemplateItem template = masterDb.GetTemplate("SOHO/Misc/Project");
//Now we can add the new item as a child to the parent
parentItem.Add(itmName, template);
//We can now manipulate the fields and publish as in the previous example
}
}
但我想填寫的領域也。如..
Item.Fields["test"].Value="testing";
對於我發現瞭如何編輯項目
public void AlterItem()
{
//Use a security disabler to allow changes
using (new Sitecore.SecurityModel.SecurityDisabler())
{
//You want to alter the item in the master database, so get the item from there
Database db = Sitecore.Configuration.Factory.GetDatabase("master");
Item item = db.Items["/sitecore/content/home"];
//Begin editing
item.Editing.BeginEdit();
try
{
//perform the editing
item.Fields["Title"].Value = "This value will be stored";
}
finally
{
//Close the editing state
item.Editing.EndEdit();
}
}
}
但我不知道如何將這些兩件事情結合起來。
我想到了2種方法。
方法1
搶,我創建了Item
的ID
。
我可以抓住Name
,但Name
可能會被複制。
方法2
在字段中填寫創建Item
之前,但隨後再次..我不知道如何做那些2種方法。
如果我能得到一些提示,我將不勝感激。
在此先感謝。
可能值得一提的是,良好的做法通常是使用項目ID而不是路徑。這樣你的代碼就不依賴於內容樹中的IA。我覺得一般的性能也更好地使用本機的ID – geedubb