从model中为datepickerfor(model => model.date)创建自定义Html帮助器

时间:2011-03-28 11:12:43

标签: asp.net-mvc-2 html-helper

我正在为我的datepicker创建自定义html帮助器 我想传递内部模式,因为它适用于TextBoxFor(model => model.name)

所以我需要的是,但我不知道该怎么做

  1. 字段名称
  2. 该字段的价值
  3. 我创建了

    public static string DatePickerFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper,Expression<Func<TModel, TProperty>> expression){
    
    //return object.name
    var expressionText = ExpressionHelper.GetExpressionText(expression);
    
    
    }
    

1 个答案:

答案 0 :(得分:8)

  1. 字段名称

    string fullHtmlFieldName = htmlHelper
        .ViewContext
        .ViewData
        .TemplateInfo
        .GetFullHtmlFieldName(
            ExpressionHelper.GetExpressionText(expression)
        );
    
  2. 字段的值

    var metaData = ModelMetadata.FromLambdaExpression(
        expression, htmlHelper.ViewData
    );
    object value = metaData.Model; // will be of type TProperty