Simple question for which I think I have an answer but I am looking for a sounding board. Should the DAL be the one translating whatever comes from the database (be it through straight SQL, stored procedures, ORM, whatever) into Domain Entities as understood by the business layer? On a separate note, should all Domain Entities be defined by an Interface (if nothing else, to minimize dependencies) ?
Should the DAL be a translation layer between the relational model and the domain model?
211 Views Asked by Otávio Décio At
1
There are 1 best solutions below
Related Questions in DNS
- Configured TTL for A record(s) backing CNAME records
- Redirecting subdomain to directory on Azure
- SPF and DKIM records for Mandrill on DigitalOcean
- How to convert hostname to DNS name?
- Could someone bring Google OAuth2 for Cloud DNS via Rest to light?
- Spoof Captive Portal Screen on an iOS Device using DNS
- DNS_PROBE_FINISHED_NXDOMAIN on Google App Engine website
- How to check if a redirect leads to a different domain
- IP address to Domain Name? DNS?
- error CS1729: The type `ARSoft.Tools.Net.Dns.DnsServer' does not contain a constructor that takes `4' arguments
- Windows, Apache, Acrylic DNS, and wildcard subdomains
- How to configure DNS for microsoft odbc driver for oracle (in 64 bit arch.)
- How to use one time domain name in android?
- logstash dns filter miss
- Redirect website to another website if blocked in particular region
Related Questions in DATA-ACCESS-LAYER
- How do I cache something within a request in EWL?
- VB.NET Using in Using
- SettingsProvider class - should it be in DAL or BLL project?
- How to know the invoker of my classes and methods in java?
- DAL Repository pattern joins using dapper
- Does Entity Framework or Telerik Data Access support DATA migrations? (NOT schema migrations)
- WCF App_Code folder dosen't recognized
- How to efficiently handle slow CLOB reading from Oracle in .Net?
- How to organize a project into three tiers?
- Update the datatable without using DataAdapter.Fill 2 times
- How do I used Count(*) with DAL2?
- Is it possible to use commandType = text to call a stored procedure using System.Data.OracleClient
- What is DTO equivalent term for objects returned from DAL?
- Recommended considerations to design **Data Access Layer**
- Advice on replacing Enterprise Library Data Access Block by Entity Framework
Related Questions in BLL
- SettingsProvider class - should it be in DAL or BLL project?
- ASP.NET MVC: BLL and DAL to Repository design
- ASP.NET Business Layer Code Persists but I'm not sure where it's stored?
- Use Settings File in Business Layer (BLL)
- How to pass data between BLL and UI in 3-layer (single tier) application?
- Linq to SQL & Logical partitioning (DAL, BLL)
- Calculations In Data Access Layer
- Calculations In Business Layer or Controllers For View Specific Info
- Does A Default Sort Order in DAL Violate Separation of Concerns
- DAL/BLL and Client/Server: Should the client use BLL or DAL objects for presentation? Or maybe another layer (data transfer object?)
- Working with MVC 2.0 and the Model in a separate assembly
- RIA Services and the BLL
- Repository pattern: DAL or BLL
- C# Best practices - Set readonly model property value from BLL
- How to make Business layer object create many instances of the same Data Access layer object
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
In my opinion, yes. I'm not sure there is a hard and fast rule though.
In my opinion, no. That may end up in a lot of interfaces that add no value. YAGNI.