Entity Frameworkを少し使用しようとしていますが、レイヤーの分離に関する質問がありました。
私は通常UI-> BLL-> DALアプローチを使用しますが、ここでEFを使用する方法を知りたいです。
私のDALは通常、次のようなものです
GetPerson(id)
{
// some sql
return new Person(...)
}
BLL:
GetPerson(id)
{
Return personDL.GetPerson(id)
}
UI:
Person p = personBL.GetPerson(id)
私の質問は、EFが私のモデルとDALを作成するので、EFを自分のDAL内にラップするのは良い考えですか、それとも時間の無駄ですか?
EFをラップする必要がない場合でも、Model.esmxを独自のクラスライブラリ内に配置しますか、それともBLL内に配置してそこで作業するだけでいいでしょうか?
EFを自分のDAL内にラップする理由は実際にはわかりませんが、他の人が何をしているのか知りたいです。
したがって、上記の代わりに、DALを除外して、次のようにします。
BLL:
GetPerson(id)
{
using (TestEntities context = new TestEntities())
{
var result = from p in context.Persons.Where(p => p.Id = id)
select p;
}
}
何をすべきか?