public virtual string GetLink(IHtmlHelper helper, PageLink link) { par.Process(helper, link); var val = helper.GetViewParams().GetFromOther(link.Name, link.DefaultValue); if (string.IsNullOrEmpty(val)) { return(null); } var nam = helper.GetService <IUIFileNameService>(); val = nam.ApplyConvension(val, AppParts.Route); string l = "'/" + val + "/'"; string id = ""; if (link.IdExpression != null) { id = "+" + link.IdExpression; } else if (link.IdProperty != null) { id = "+" + helper.GetModelName() + "." + link.IdProperty; } return(l + id); }
public virtual string GetLink <T, TValue>(IHtmlHelper <T> helper, string id, Expression <Func <T, TValue> > idProperty, string def) { string prop = RazorUtils.GetMemberName(idProperty); var link = new PageLink(id, def, null, prop); return(GetLink(helper, link)); }
public void Process(IHtmlHelper helper, PageLink link) { if (helper.CollectingData()) { helper.GetCollector().Parameters.Add(new PageCategoryParameterDTO { Name = link.Name, Type = (int)PageParameterTypes.PageLink, DefaultValue = link.DefaultValue }); } }
/// <summary> /// Returns string presenting a link to another component, processed as view parameter /// </summary> /// <param name="id">The identifier of the link view parameter that is obtained or stored in database json</param> /// <param name="def">The default value for that link filled if the view parameter is empty</param> /// <param name="idProperty">if not null added after the link and the model name (ex : '/[linkValue]/'+[ngModelName].[idProperty]</param> /// <param name="idExpression">if not null added after the link (ex: '/[linkValue]/'+[idExpression]</param> /// <returns></returns> public static string GetLink(this IHtmlHelper helper, PageLink link) { var Provider = helper.GetService <IMoldsterGeneralHelper>(); return(Provider.GetLink(helper, link)); }
/// <summary> /// Returns <see cref="IHtmlContent"/> presenting a link to another component, processed as view parameter /// </summary> /// <param name="id">The identifier of the link view parameter that is obtained or stored in database json</param> /// <param name="def">The default value for that link filled if the view parameter is empty</param> /// <param name="idProperty">if not null added after the link and the model name (ex : '/[linkValue]/'+[ngModelName].[idProperty]</param> /// <param name="idExpression">if not null added after the link (ex: '/[linkValue]/'+[idExpression]</param> /// <returns></returns> public static IHtmlContent GetLinkRaw(this IHtmlHelper helper, string id, string def, string idProperty = null, string idExpression = null) { var lnk = new PageLink(id, def, idProperty, idExpression); return(helper.Raw(helper.GetLink(lnk))); }