Exemple #1
0
        public static string BuildUrlFromExpression <TController>(RequestContext context, RouteCollection routeCollection, Expression <Action <TController> > action) where TController : Controller
        {
            RouteValueDictionary routeValues = ExpressionHelper.GetRouteValuesFromExpression(action);
            VirtualPathData      vpd         = routeCollection.GetVirtualPath(context, routeValues);

            return((vpd == null) ? null : vpd.VirtualPath);
        }
Exemple #2
0
        /*  public static MvcHtmlString CheckBoxFor<TModel>(this HtmlHelper<TModel> htmlHelper,
         *                                         Expression<Func<TModel, bool>> expression)
         *    where TModel : class
         * {
         *    return CheckBoxFor(htmlHelper, expression, null);
         * }
         */
        public static MvcHtmlString CheckBoxFor <TModel>(this HtmlHelper <TModel> htmlHelper,
                                                         Expression <Func <TModel, bool> > expression, IDictionary <string, object> htmlAttributes)
            where TModel : class
        {
            var inputName = ExpressionHelper.GetInputName(expression);
            var local     = GetValue(htmlHelper, expression);

            return(htmlHelper.CheckBox(inputName, local, htmlAttributes));
        }
Exemple #3
0
        /*   public static string ValidationMessageFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper,
         *                                                     Expression<Func<TModel, TProperty>> expression)
         *     where TModel : class
         * {
         *     return PasswordFor(htmlHelper, expression, null);
         * }*/

        /* public static string PasswordFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper,
         *                                                Expression<Func<TModel, TProperty>> expression)
         * where TModel : class
         * {
         *   var inputName = ExpressionHelper.GetInputName(expression);
         *   return htmlHelper.Password(inputName).ToString();
         * }
         */

        public static MvcHtmlString[] RadioButtonListFor <TModel, TProperty>
            (this HtmlHelper <TModel> htmlHelper,
            Expression <Func <TModel, TProperty> > expression,
            IEnumerable <SelectListItem> selectList)
            where TModel : class
        {
            var inputName = ExpressionHelper.GetInputName(expression);

            return(htmlHelper.RadioButtonList(inputName, selectList));
        }
Exemple #4
0
        /*  public static string RadioButtonFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper,
         *    Expression<Func<TModel, TProperty>> expression, object value)
         *    where TModel : class
         * {
         *    return RadioButtonFor(htmlHelper, expression, value, null);
         * }
         */
        public static string RadioButtonFor <TModel, TProperty>(
            this HtmlHelper <TModel> htmlHelper,
            Expression <Func <TModel, TProperty> > expression, object value, object htmlAttributes)
            where TModel : class
        {
            var    inputName = ExpressionHelper.GetInputName(expression);
            object local     = GetValue(htmlHelper, expression);

            if (local == null)
            {
                local = string.Empty;
            }
            return(htmlHelper.RadioButton(inputName, value, local.NotNullString()
                                          == value.NotNullString(), htmlAttributes).ToString());
        }
Exemple #5
0
        public static MvcHtmlString DropDownListFor <Tm, Tp, Ti>(this HtmlHelper <Tm> htmlHelper,
                                                                 Expression <Func <Tm, Tp> > expression, IEnumerable <Ti> source,
                                                                 Func <Ti, object> textSelector, Func <Ti, object> valueSelector,
                                                                 IDictionary <string, object> htmlAttributes)
            where Tm : class
        {
            var inputName = ExpressionHelper.GetInputName(expression);
//            var local = GetValue(htmlHelper, expression);
            var selectItemList = new List <SelectListItem>();
            var propertyInfo   =
                ((MemberExpression)(expression.Body)).Member as PropertyInfo;

            if (LinqToSqlUtils.CanBeNull(propertyInfo))
            {
                selectItemList.Add(
                    new SelectListItem
                {
                    Text  = "Нет",
                    Value = string.Empty,
                });
            }
            selectItemList.AddRange(SelectListUtil.GetSelectItemList(source, textSelector, valueSelector));
            return(htmlHelper.DropDownList(inputName, selectItemList, htmlAttributes));
        }
Exemple #6
0
        public static MvcHtmlString ActionLink <TController>(this HtmlHelper helper, Expression <Action <TController> > action, string linkText, object htmlAttributes) where TController : Controller
        {
            RouteValueDictionary routingValues = ExpressionHelper.GetRouteValuesFromExpression(action);

            return(helper.RouteLink(linkText, routingValues, new RouteValueDictionary(htmlAttributes)));
        }