ASP.NET Core-Attribut MetaDataType nicht funktioniert
Ich bin mit dem Attribut MetaDataType auf meine domain model-Klasse. Es sollte zu bewegen, die Attribut-Informationen aus der referenzierten Klasse in die Klasse, die das Attribut MetadataType gesetzt wurde.
Aber es funktioniert nicht wie beworben. Was die Ursache für das Problem hier?
[MetadataType(typeof(ComponentModelMetaData))]
public partial class Component
{
public int Id { get; set; }
public string Name { get; set; }
public ICollection<Repo> Repos { get; set; }
public string Description { get; set; }
}
public class ComponentModelMetaData
{
[Required(ErrorMessage = "Name is required.")]
[StringLength(30, MinimumLength = 3, ErrorMessage = "Name length should be more than 3 symbols.")]
public string Name { get; set; }
public ICollection<Repo> Repos { get; set; }
[Required(ErrorMessage = "Description is required.")]
public string Description { get; set; }
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
ASP.NET Core verwendet
statt
Quelle
Versuchen Sie Ihr Attribut
[ModelMetadataType(typeof(ComponentModelMetaData))]
Dies ist, wie ich gelöst habe das gleiche Problem, ich hoffe, dass dies Ihr problem lösen.
Entity-Klasse:
Metadaten:
Glück...
Anderen Art und Weise... mit dem gleichen namespace