1
我正在使用Web API2應用程序,需要驗證客戶端有條件地發送的DTO。我正在使用基於屬性的驗證。 我的設計是有一個IDtoValidator
接口,其中有一個IsValid()
方法來驗證數據。 我需要提供錯誤消息以及用戶可讀的格式,它出現在接口本身中,以便實現接口的每個類都可以放入它們自己的錯誤消息。驗證DTO並獲取錯誤消息
這裏是我的課: 操作方法:
public interface IDtoValidator
{
bool IsValid();
}
public class FormResponseDto : BaseResponseDto, IDtoValidator
{
public bool IsValid()
{ ... some logic to validate the model...}
}
我的驗證的操作方法的想法
public async Task<IHttpActionResult> MyMethod(FormResponseDto dto)
{
if(dto.IsValid())
return BadRequest(dto.GetErrorMessage());
}
請提出簡潔的設計這一點。 問題是,在isValid()
方法中,我需要設置errorMessage,這是接口的另一個屬性。只需要私人設置,這不能在一個界面中完成。