Validation

S2Dao.NETのストアド一段落ついた今、次にトライしたいのは入力チェックです。
チェックするのはDTOに対して行なうことにします。
考えているのはこんな感じ。C#で書いてみます。

[Table("T_HOGE")]
public class Hoge : IValidatable
{
    private int _id;
    private string _name;

    [Column("n_id")]
    [Required],
    [Length(0, 1000)]
    public int Id
    {
         get { return _id; }
        set { _id = value; }
    }

    [Column("s_name")]
    [Length(0, 50)]
    public string Name
    {
        get { return _name; }
        set { _name = value; }
    }
}


AOPで、指定したメソッドを呼び出したときにチェックするという感じです。ただ、なんでもチェックするのではなくて、IValidatableをインプリメントしたクラスだけをチェックすることにします。

属性の書き方ってこれであってたけ?

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

sugimotokazuya
2006年12月20日 20:26
IValidatableに依存してしまうのは嫌な感じです。
Validateするかどうかの判断に必要であれば、Validate属性みたいなのをクラスに付けるのはどうでしょうか?

属性の場合はPONOと言えると思うのですが、特定のインターフェースの実装が必要になればPONOじゃなくなってしまうような。

この記事へのトラックバック