在哪里验证DTO

时间:2016-09-12 08:31:22

标签: validation language-agnostic dto

我正在编写一个发送和接收DTO的Web服务

DTO可能看起来像这样(在本例中是C#)

[Serializable]
public class GetCardStatusRequest : RequestBase
{
    public GetCardStatusRequest()
    {

    }

    public String CardId { get; set; }
}

当收到这样的请求DTO时,我想验证CardId是否为空。

所以我目前有一个验证类

internal class Validation
{
    internal static bool IsValidGetGiftCardStatusRequest(GetCardStatusRequest getCardStatusRequest)
    {
        return getCardStatusRequest.CardId != null && !string.IsNullOrEmpty(getCardStatusRequest.CardId);
    }
}

还有更多“复杂”的DTO,所以我想将验证逻辑放在某处,以确保传入请求在映射到业务对象之前是有效的。

我的问题是我应该在哪里放置验证逻辑,我应该怎么做?我目前这个类只有静态方法,这对我来说似乎不对。 该验证应该放在服务层吗? 我觉得上面这个逻辑非常接近,但是看起来不正确。

0 个答案:

没有答案
相关问题