33
@Ben_Hall [email protected] Blog.BenHall.me.uk NHibernate Open Source Object Relational Mapping (ORM) Framework My pain with

@ Ben_Hall [email protected] Blog.BenHall.uk

  • Upload
    vonda

  • View
    20

  • Download
    1

Embed Size (px)

DESCRIPTION

My pain with. NHibernate Open Source Object Relational Mapping (ORM) Framework. @ Ben_Hall [email protected] Blog.BenHall.me.uk. Learning Curve. Agenda. Querying Mapping Relationships ‘Real’ application Castle’s Active Record. What is ORM?. Mapping between objects and database. - PowerPoint PPT Presentation

Citation preview

Page 1: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

@[email protected]

NHibernateOpen Source Object Relational Mapping (ORM)

Framework

My pain with

Page 2: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk
Page 3: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Learning Curve

Se-ries1

Page 4: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Agenda

• Querying• Mapping• Relationships• ‘Real’ application• Castle’s Active Record

Page 5: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

What is ORM?

Page 6: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Mapping between objects and database

Page 7: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Objects vs Tables

Page 8: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

ORM allows us to talk in our own language

Page 9: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Developers vs DBAs

Page 10: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk
Page 11: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Personal Choice

Page 12: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

My choice is NHibernate

Page 13: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk
Page 14: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk
Page 15: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk
Page 16: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

http://sourceforge.net/projects/nhibernate

http://teamcity.codebetter.com/overview.html

Page 17: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

QUERYING THE DATABASEDEMO

Page 18: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

CREATE, UPDATE, DELETEDEMO

Page 19: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

RELATIONSHIPSDEMO

Page 20: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk
Page 21: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

STORED PROCEDURESDEMO

Page 22: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

BUT I LIKE LINQDEMO

Page 23: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

The Real World

Page 24: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Testing ASP.net Web Applications

www.TestingASPnet.com

Page 25: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

WROX PIZZADEMO

Page 26: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Sharp Architecture

http://code.google.com/p/sharp-architecture/

Page 27: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Active Record

Page 28: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

ACTIVE RECORDDEMO

Page 29: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

In summary...

Page 30: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Summary

• NHibernate has a learning curve • After the initial hit, easy to continue• A lot more powerful than I have shown today• Fluent NHibernate over XML Mapping• Active Record has an improved out-the-box

experience

Page 31: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Ben [email protected]

Thank you

Page 32: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Resources

• http://Blog.BenHall.me.uk• http://www.TestingASPnet.com• http://sourceforge.net/projects/nhibernate• http://teamcity.codebetter.com/overview.html• http://nhforge.org• http://www.castleproject.org/ActiveRecord/• http://code.google.com/p/sharp-architecture/

Page 33: @ Ben_Hall Ben@BenHall.uk Blog.BenHall.uk

Flickr Images• http://www.flickr.com/photos/twenty_questions/

2261331590/• http://www.flickr.com/photos/kaibara/2920616863/• http://www.flickr.com/photos/mag3737/1914076277/• http://www.flickr.com/photos/zen/2273186263/• http://www.flickr.com/photos/frielp/6829509/• http://www.flickr.com/photos/e_phots/2345645865/• http://www.flickr.com/photos/leon_homan/2856628778/• http://www.wordle.net