2013-01-17 51 views
0

我正在編程地向sitecore數據庫添加一個版本。該項目在工作流程下。一切都很好,但是我的工作流程包含英文和丹麥文版本。我想擺脫丹麥版本,或者避免首先創建它。 這是我的代碼片段Sitecore和未經審查的丹麥版本​​,當編程添加項目

var database = Sitecore.Configuration.Factory.GetDatabase("master"); 
Sitecore.Data.Items.Item itm = database.GetItem(Constants.Sitecore.CommonPages.JOB_LISTINGS); 

using (new Sitecore.SecurityModel.SecurityDisabler()) 
{ 
    TemplateItem itemTemplate = database.GetItem(Constants.Sitecore.Templates.JOB); 


    Item scInnerItem = itm.Add(ItemUtil.ProposeValidItemName(string.Format("{0} {1}", jb.JobId, jb.PositionTitle.RemoveSpecialCharacters())), itemTemplate); 
    Job scJob = new Job(scInnerItem); 

    using (new EditContext(scInnerItem)) 
     scJob.GetJobFromUserJob(jb); 

    return (IBaseSitecoreItem)scJob; 
} 
+0

如果我沒有記錯,丹麥語是主頁有版本的默認語言之一,但英語是唯一已安裝的語言(默認情況下)。也許是由於這個原因。刪除其他語言版本並嘗試。 – jammykam

回答

0

丹麥的確是默認安裝的,但它不應該被竊聽/討厭你,而務實的添加項目。 下面是檢查兩件事情:

1)什麼是你的網站)的默認語言,檢查節點在web.config中
2是否在作業模板有什麼標準值,並通過他們在丹麥任何機會?

+0

這不是讓我煩惱,但用戶非常惱火,他們bug我.... – eloycm

+0

改寫的問題,有沒有什麼辦法可以避免通過代碼插入丹麥版本? – eloycm

0

我可以想到幾件事情: 使用LanguageSwitcher來臨時更改代碼中的上下文語言。所以把它改成英文。

當您檢索存儲新項目的父項目時,必須已經切換語言。 加載父項時的上下文語言將以某種方式定義新創建版本的語言。

希望有幫助!

+0

我會試一試謝謝你! – eloycm

+0

這項工作有任何機會嗎? –