コード例 #1
0
        public static MvcHtmlString CustomLabelFor <TModel, TValue>(this HtmlHelper <TModel> html, Expression <Func <TModel, TValue> > expression, object htmlAttributes)
        {
            var metadata          = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
            var resolvedLabelText = metadata.DisplayName ?? metadata.PropertyName;

            if (metadata.IsRequired)
            {
                resolvedLabelText += "*";
            }
            return(LabelExtensions.LabelFor <TModel, TValue>(html, expression, resolvedLabelText, htmlAttributes));
        }
コード例 #2
0
        public static MvcHtmlString RequiredLabelFor <T, U>(this HtmlHelper <T> helper, Expression <Func <T, U> > expression, object htmlAttributes)
        {
            var metaData = ModelMetadata.FromLambdaExpression(expression, helper.ViewData);

            string htmlFieldName = ExpressionHelper.GetExpressionText(expression);
            string labelText     = metaData.DisplayName
                                   ?? metaData.PropertyName
                                   ?? htmlFieldName.Split('.').Last();

            if (metaData.IsRequired)
            {
                labelText += "*";
            }

            return(LabelExtensions.LabelFor(helper, expression, labelText, htmlAttributes));
        }