Microsoft MDM, Entity Framework and Astoria – is Jasper the missing link?

Confession: I had never heard of Microsoft Master Data Management before seeing Jamie Thompson’s blogpost, MDM -> Entity Framework -> ADO.Net Data Services. Better together?. MDM is a BI tool created by a company called Stratature, which Microsoft acquired in June. Jamie writes more about that in Microsoft purchases Stratature. Notice which technology MDM is listed under on Microsoft’s website.

Jamie sees a strong connection between MDM and entity framework’s capabilities, however he points out one big disconnect which is that EF can’t create EDMs on the fly at run time.

But can’t it? We’ve actually seen some explorations into this with the long ignored Jasper project, an incubator project that was previewed at last year’s MIX conference. I wrote an article about Jasper for OReilly which you can read to get an idea of what that’s all about: Build Dynamic Database Applications in .NET with Project Codename “Jasper” .

The short explanation is that Jasper dynamically generated an EDM on the fly at runtime by pointing to a database. Then some intelligent dynamic controls use Convention over Configuration to make assumptions about what you want to do with whatever data model was created. Dynamic languages are core to how Jasper works.

Jamie points out that Brian Dawson and Jeff Derstadt both expressed interest in his questions about bridging the two and providing the ability to dynamically create EDMs. Well, they’ve already got some of that work done. Maybe it will revive some interest in the ideas that were being put forth with Jasper.

I also grinned when Jamie said he had “cheated” by manually adding associations into an EDM based on an MDM database because MDM didn’t infer the relationships. That’s not cheating; that’s what the conceptual layer is for! 🙂

  Sign up for my newsletter so you don't miss my conference & Pluralsight course announcements!  

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.