私は現在、小さなASP.NET MVCプロジェクトに取り組んでいます。
私はMS Sql Serverデータベース上で持続するためにNhibernateを実装しようとしています。 インターネットで見つかったDDDやその他のプロジェクトを長い時間勉強してきたので、私はリポジトリパターンを検討することに決めました。 今私はジレンマに直面しています。
Nhinbernateを使用する場合、本当にリポジトリが必要ですか?私は昔のを見つけたASP.NET MVC、Nhibernateとsmall/mediumプロジェクト用のリポジトリ
public Domain.Reminder GetById(Guid Code)
{
return (_session.Get<Domain.Reminder>(Code));
}
public Domain.Reminder LoadById(Guid Code)
{
return (_session.Load<Domain.Reminder>(Code));
}
public bool Save(Domain.Reminder Reminder)
{
_session.SaveOrUpdate(Reminder);
return (true);
}
public bool Delete(Domain.Reminder Reminder)
{
_session.Delete(Reminder);
return (true);
}
:
Nhinbernateはそのようなことを何度も書くことが回避と対話するサービス層を(私は現時点ではサービス層を持っていない)持っている方が良いと思いませんかリポジトリに対するAyendeのPOST。
これらのトピックの周りには巨大な議論があり、その答えは常に...依存していますが、あまりにも多くの抽象レイヤーでは、より複雑で追随が難しいようです。
私は間違っていますか?
ちょっとしたメモです。中小規模のプロジェクトはありませんが、今は小さくても構いませんが、明日のマネージャーはあなたにもう1つのフィーチャーを求め、もう1つのフィーチャーともう1つのフィーチャーを求めます。そして最終的には、 。 Big Design Up Frontが好きではありませんが、時には少し先を考える必要があります。 – goenning
私はあなたに完全に同意しますが、実際には、将来私がnihbernateを使用しないかもしれないという事実のためではないにしても、私はリポジトリを使う利点を見ることができません。私は現時点で正当化できない余分な仕事をたくさん作り出しています。 – LeftyX