使用ASP.NET CORE 2,有没有办法使用数据注释在输入字段上禁用拼写检查?例如,禁用名字数据的拼写检查... 我知道直接在html视图中设置spellcheck =“ false”,但希望能够在viewmodel /模型中使用属性。
答案 0 :(得分:0)
您可以创建一个自定义属性,定义该属性是否应进行拼写检查:
[AttributeUsage(AttributeTargets.Property, Inherited = false)]
public class SpellCheckedAttribute : System.Attribute
{
private bool _spellCheck;
public SpellCheckedAttribute(bool spellCheck)
{
_spellCheck = spellCheck;
}
public virtual bool SpellCheck
{
get
{
return _spellCheck;
}
}
}
然后在模型中,您可以在相关属性上添加属性:
public class YourModel
{
[SpellChecked(true)]
public string name { get; set; }
}
在控制器中,您可以通过以下方法检查特定属性是否应进行拼写检查:
var nameShouldSpellCheck = typeof(YourModel).GetTypeInfo().GetProperty("name").GetCustomAttribute<SpellCheckedAttribute>().SpellCheck;
然后您可以根据该值在javscript中启用/禁用拼写检查。