我有这些课程
public class CryptocurrencyDto
{
public int RequestId { get; set; }
public IEnumerable<Cryptocurrency> Cryptocurrencies { get; set; }
}
public class Cryptocurrency : BaseClass
{
public string Ticker { get; set; }
public string Name { get; set; }
public double TotalSupply { get; set; }
public double CirculatingSupply { get; set; }
public IEnumerable<Note> Notes { get; set; }
}
public class Note
{
public int NoteId { get; set; }
public string Description { get; set; }
public IEnumerable<Url> Urls { get; set; }
public byte Image { get; set; }
public int DisplayOrder { get; set; }
}
public class Url
{
public string UrlId { get; set; }
public string Link { get; set; }
public string Description { get; set; }
}
我有这个端点
[HttpPost]
public void Post([FromBody] CryptocurrencyDto cryptocurrency)
{
}
我如何通过这些课程进行验证?到目前为止,我只知道如何验证第一类CryptocurrencyDto
。我不知道该如何到达其他班级。加密货币,注释和网址。
有很多方法可以对关联的类使用验证(例如T
或IEnumerable<T>
):
创建并使用ValidationAttribute
实施IValidatableObject
FluentValidation等第三方软件包]
在Controller
中检查它