2012-05-03 124 views
2

我可以訪問@ Umbraco.getDictionaryItem助手在我的自定義控制器在我的自定義區域,然後將其添加到我公司通過普通的jQuery的Ajax呈現的自定義部分頁面的模型。 而且如果我可以在我的Surface Controller插件中訪問它,它也會很棒。Umbraco.getDictionaryItem助手在自定義控制器

感謝,

謝爾

回答

0

創建自定義控制器作爲地面控制器,並獲得IRoutableRequestContext,

public class propertydetailsController : SurfaceController 
{ 
    private IRoutableRequestContext _routableRequestContext; 
} 

然後訪問在Umbraco.Cms.Web.Dictionary的字典輔助類,樣本代碼如下。

DictionaryHelper dictionaryHelper = new DictionaryHelper(_routableRequestContext.Application); 
string valueDictionary = dictionaryHelper.GetDictionaryItemValueForLanguage("DictionaryName", "en-GB"); 

乾杯

+0

哪裏可以找到這個Umbraco.Cms.Web.Dictionary類?我搜索了相當長的一段時間......沒有證據顯示DictionaryHelper存在的任何地方,至少對於v6.1.6,v6.2.5和v7而言。在OP接受這個答案後它消失了嗎?我搜索發現DictionaryHelper的源代碼,沒有什麼:https://github.com/umbraco/Umbraco-CMS/search?utf8=%E2%9C%93&q=DictionaryHelper – firepol

+0

其實這個問題是,當一把umbraco是新進入的MVC框架並且有很多問題。因爲我記得它是v5的一些變體...... Umbraco在v5之後重寫了整個結構,所以它現在已經停止使用的可能性很大。 – Sher

+0

謝謝。其實,我開了一個新的問題,這和貼一些我使用一把umbraco V6解決這一先進的日期代碼:http://stackoverflow.com/questions/28811485/umbraco-get-dictionary-item-by-語言 - 如何在問題中尋求更好的方法。讓我們看看一些umbraco專業人士是否有答案... – firepol

0

你應該能夠訪問它在你的服務器端文件,是的。你只需要確保你有一個在你的項目中正確的Umbraco DLL的引用(不是100%確定我頭頂的DLL是該方法駐留的,儘管你必須在源代碼中查找)。

+0

:)你能成爲一個更具體一點,因爲我已經嘗試過的代碼,但沒有運氣的工作,唯一的解決辦法,我能夠做的就是通過jQuery的AJAX通過轉換後的值並將它們添加到我的模型n中,然後在我的局部視圖中使用它們。 – Sher