モデルのメタデータ属性にアクセスして、DataAnnotations に基づいて HtmlAttributes を自動的に追加するヘルパーを作成しようとしています。
問題は、属性が常に空であることです。
空のプロジェクトで試す 2 つの基本的なクラスがあります。
namespace MegaInterestingProject
{
public class HomeController : Controller
{
public string Index()
{
var model = ModelMetadata.FromLambdaExpression<HomeModel, string>(x => x.User, new ViewDataDictionary<HomeModel>());
return model.Description;
}
}
public class HomeModel
{
[Required]
[MaxLength(13)]
[MinLength(11)]
[DisplayName("displayname")]
[Description("description")]
public string User { get; set; }
}
}
ここで、model.Description は常に空で、AdditionalValues ディクショナリは常に空です。
たぶん、ここに何かが欠けていますか?
GitHub に追加した参照プロジェクトは次のとおりです: https://github.com/erickgirard/TestHtmlAttributesHelper