Ich versuche ein bisschen mit Entity Framework zu arbeiten und habe eine Frage bezüglich der Trennung von Ebenen.
Ich benutze normalerweise den UI -> BLL -> DAL-Ansatz und frage mich, wie ich EF hier verwenden soll.
Mein DAL wäre normalerweise so ähnlich
GetPerson(id)
{
// some sql
return new Person(...)
}
BLL:
GetPerson(id)
{
Return personDL.GetPerson(id)
}
Benutzeroberfläche:
Person p = personBL.GetPerson(id)
Meine Frage ist nun: Da EF mein Modell und mein DAL erstellt, ist es eine gute Idee, EF in mein eigenes DAL zu packen, oder ist es nur Zeitverschwendung?
Wenn ich EF nicht umbrechen muss, würde ich meine Model.esmx trotzdem in eine eigene Klassenbibliothek einfügen oder wäre es in Ordnung, sie einfach in meine BLL einzufügen und dort einige zu bearbeiten?
Ich kann den Grund nicht wirklich erkennen, EF in meine eigene DAL zu packen, aber ich möchte wissen, was andere Leute tun.
Anstatt das oben Genannte zu haben, würde ich die DAL weglassen und einfach tun:
BLL:
GetPerson(id)
{
using (TestEntities context = new TestEntities())
{
var result = from p in context.Persons.Where(p => p.Id = id)
select p;
}
}
Was ist zu tun?