public static ComponentBuilder <MvcBootstrapConfig <TModel>, FormButton> ButtonFor <TComponent, TModel, TValue>( this BootstrapHelper <MvcBootstrapConfig <TModel>, TComponent> bootstrap, Expression <Func <TModel, TValue> > expression, string text, TValue value) where TComponent : Component, ICanCreate <FormButton> { var config = (MvcBootstrapConfig <TModel>)bootstrap.GetConfig(); var html = config.GetHtmlHelper(); var metadata = ModelMetadata.FromLambdaExpression(expression, html.ViewData); var expressionText = ExpressionHelper.GetExpressionText(expression); var name = GetControlName(html, expressionText); var label = GetControlLabel(metadata, expressionText); return(bootstrap.FormButton(text: text, label: label, value: value)); }