/// <summary>
        ///  Display identified property of the domain object in edit fields, with action dialog or collection view
        /// </summary>
        /// <param name="html">Html helper</param>
        /// <param name="contextObject">domain object to be displayed</param>
        /// <param name="targetObject">owning object of targetAction</param>
        /// <param name="targetAction">action to display as dialog - may be null</param>
        /// <param name="propertyName">property to be decorated with action dialog or selection view</param>
        /// <param name="actionResult">collection of objects to display in selection view - may be null</param>
        /// <returns></returns>
        public static MvcHtmlString PropertyListEditWith(this HtmlHelper html, object contextObject, object targetObject, IActionSpec targetAction, string propertyName, IEnumerable actionResult)
        {
            INakedObject nakedObject = html.Framework().GetNakedObject(contextObject);
            INakedObject target      = html.Framework().GetNakedObject(targetObject);

            return(html.BuildEditContainer(nakedObject,
                                           html.EditObjectFields(contextObject, new ActionContext(true, target, targetAction), propertyName, actionResult, false),
                                           IdHelper.FieldContainerName,
                                           IdHelper.GetFieldContainerId(nakedObject)));
        }
 public string GetParameterId()
 {
     return(IdHelper.GetParameterId(Action, Parameter));
 }
 public string GetParameterAutoCompleteId()
 {
     return(IdHelper.GetParameterAutoCompleteId(Action, Parameter));
 }
 public string GetFindMenuId(string propertyName)
 {
     return(IdHelper.GetFindMenuId(Target, Action, propertyName));
 }
 public string GetActionDialogId()
 {
     return(IdHelper.GetActionDialogId(Target, Action));
 }
 public string GetSubMenuId()
 {
     return(IdHelper.GetSubMenuId(Target, Action));
 }
 public string GetConcurrencyActionInputId(IAssociationSpec nakedObjectAssociation)
 {
     return(IdHelper.GetConcurrencyActionInputId(Target, Action, nakedObjectAssociation));
 }
 public string GetConcurrencyFieldInputId()
 {
     return(ParentContext == null?IdHelper.GetConcurrencyFieldInputId(Target, Property) : IdHelper.GetInlineConcurrencyFieldInputId(ParentContext.Property, Target, Property));
 }
        public string GetFieldId()
        {
            var thisFieldId = IdHelper.GetFieldId(Target, Property);

            return(ParentContext == null ? thisFieldId : IdHelper.MakeId(ParentContext.GetFieldId(), thisFieldId));
        }
 public string GetAutoCompleteFieldId()
 {
     // append autocomplete suffix if reference field only to differentiate for hidden input field with actual value
     return(IdHelper.GetFieldAutoCompleteId(GetFieldInputId(), Target, Property));
 }
 public string GetParameterInputId()
 {
     return(IdHelper.GetParameterInputId((Action), (Parameter)));
 }
 public string GetActionId()
 {
     return(IdHelper.GetActionId((Target), (Action)));
 }
 public string GetConcurrencyActionInputId(IAssociationFacade association)
 {
     return(IdHelper.GetConcurrencyActionInputId(Target, (Action), (association)));
 }