Hi all,
Just wanted to findout that in normal distributed computing environments or 3-tier application;
is it necessary to use Object relational mapping if yes which phase of the project
-Paresh
Hi all,
Just wanted to findout that in normal distributed computing environments or 3-tier application;
is it necessary to use Object relational mapping if yes which phase of the project
-Paresh
Object Relationship Mapping ?
Jason D. Camp
Interesting question! As always "it depends". Typically you'll choose one of the following architecture styles namely: Transaction Script, Table Module, Domain Model for your application. In the case of the Domain Model pattern you would implement this using custom classes expressing the abstractions in your problem domain. There's a big chance that the resulting Domain Model isn't mappable 1:1 on your normalised logical data schema. So, using the Domain Model pattern to organise the business logic using by using the abstractions in your problem domain leaves you no other option then to use some form of object-relational mapping.
In the other replies there are great book recommendations which describe these concepts in detail. Perhaps this helps choosing an architecture style "Organizing Domain Logic".
MohsinAta
Hi all,
Thanks to everyone for contributing.
while evaluating and testing O/R Mapping tools,
I came across
a) LLBLGen Pro
b) NHibernet
c) Codus
d) other tools
Which one do you recommend Domain Centric is what I am looking at.
kindly share your experiences with the tools in tech depth as well.
thanks
Paresh.
reachrishikh
Hi
It isnt really necessary. It depends on the kind of project you are working on and what kind of data accessibility requirements you have. You can live without Object Relational Mapping for sure. I always recommend this http://msdn.microsoft.com/library/en-us/dnbda/html/BOAGag.asp regarding data access patterns.
However if you decide to use ORM then its one of the decisions that needs to be made earlier in the project. And there are certain ORM tools available as well.
Let me know if you have any specific queries and i will be happy to answer.
cheers!
Hammad Rajjoub
http://dotnetwizards.blogspot.com
abhas
If you start with object oriented modelling of your domain and want to design implement and maintain only one model - your domain model - have a look at Persistor.NET. The database model is derived automatically.
Hans-Peter
sachin303
Do look at a the below thread in this forum
http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=543039&SiteID=1
The part you might be interested in is the comments by navingp and Phil James that
"The point of O/R mapping is to provide a layer of abstraction between the software and the database. Changes to database could be made without affecting your domain model isolating the impact on software to the data access layer and mapping layer. The mapping ties your domain model and the physical database together. "
elixic
O/R mapping is not directly related to distributed systems (3-tier ; n-tier ; etc.). O/R mapping is a strategy to overcome the OO model and the relational model "Impedance mismatch"
Arnon
LEPScapa
A fantastic book was just published on the Addison-Wesley imprint-
Applying Domain-Driven Design and Patterns: With Examples in C# and .NET
It covers TDD, DDD, and ORM and is a great companion to Fowler's
Patterns of Enterprise Application Architecture
Eddie Garcia
Hi,
Check out IdeaBlade/DevForce - http://www.ideablade.com/developers.html
Regards,
Thomas Nielsen
MGrieb
Paresh
I want to also recommend you a free book from Patterns and Practices: Data Patterns
That is, common, reusable solutions to frequent problems with data access
You also have the Data Access Application Block, a mechanism for hiding details of the ADO.NET API, that accelerates your development process
A series of articles was published in MSDN Magazine:
-Data Points, Part 1
-Data Points, Part 2
-Data Points, Part 3
It's also interesting the study case published in The Architecture Journal, about "The Nordic Object/Relational Database Design"
Hope this stuff helps