.Net MVC 3 Razor пример использования DdUovFor обходного пути для исправления DropDownListFor проверки? - PullRequest
0 голосов
/ 12 января 2012

Я встретил следующий код в этом посте , который должен исправить валидацию для DropDownListFor.Однако я не уверен, какое значение передать из представления для параметра:

this HtmlHelper<TModel> htmlHelper

Что следует передать для этого значения?Не могли бы вы привести пример использования этого в представлении?Это связано с этим вопросом , где не приводится пример.

 [SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters", Justification = "Users cannot use anonymous methods with the LambdaExpression type")]
        [SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures", Justification = "This is an appropriate nesting of generic types")]
        public static MvcHtmlString DdUovFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, IEnumerable<SelectListItem> selectList, string optionLabel, IDictionary<string, object> htmlAttributes)
        {
            if (expression == null)
            {
                throw new ArgumentNullException("expression");
            }

            ModelMetadata metadata = ModelMetadata.FromLambdaExpression(expression, htmlHelper.ViewData);

            IDictionary<string, object> validationAttributes = htmlHelper
                .GetUnobtrusiveValidationAttributes(ExpressionHelper.GetExpressionText(expression), metadata);

            if (htmlAttributes == null)
                htmlAttributes = validationAttributes;
            else
                htmlAttributes = htmlAttributes.Concat(validationAttributes).ToDictionary(k => k.Key, v => v.Value);

            return SelectExtensions.DropDownListFor(htmlHelper, expression, selectList, optionLabel, htmlAttributes);
        }

1 Ответ

0 голосов
/ 12 января 2012

Вам не нужно ничего передавать, просто вызовите @ Html.DdUov, чтобы игнорировать этот параметр.

См. Методы расширения: http://msdn.microsoft.com/en-us/library/bb383977.aspx

htmlHelper является экземпляром Html в @Html .. автоматически, на который он ссылается в представлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...