Искам да деактивирам уеб редактирането за поле, което се показва, докато използвам Html.Sitecore().Field(string fieldName, Item item, object params)
, но имам проблем. Следното извежда грешка „несъответствие на броя на параметрите“.
@Html.Sitecore()
.Field(item.InnerField.Name, item.InnerField.Item,
new Sitecore.Collections.SafeDictionary<string, string>
{
{"class", classParam},
{"disable-web-edit", pageEditorEnabled.ToString()}
});
Не можах да използвам анонимен обект, защото disable-web-edit има тирета. Може да има някаква друга ключова дума, която би трябвало да използвам, но това е, което рендиращият поле използва iirc.
[TargetParameterCountException: Parameter count mismatch.]
System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +14255904
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +96
System.Reflection.RuntimePropertyInfo.GetValue(Object obj, Object[] index) +37
Sitecore.Mvc.Helpers.TypeHelper.CopyProperties(Object source, SafeDictionary`2 target) +89
Sitecore.Mvc.Helpers.SitecoreHelper.BeginField(String fieldName, Item item, Object parameters) +120
Sitecore.Mvc.Helpers.SitecoreHelper.Field(String fieldName, Item item, Object parameters) +23
@Html.Sitecore().Field("Field Name", new { DisableWebEdit = true })
? - person Marek Musielak   schedule 20.10.2015