Print Page | Close Window

WPF/SL Prism + IdeaBlade

Printed From: IdeaBlade
Category: DevForce
Forum Name: DevForce 2009
Forum Discription: For .NET 3.5
URL: http://www.ideablade.com/forum/forum_posts.asp?TID=1601
Printed Date: 27-Apr-2024 at 3:40am


Topic: WPF/SL Prism + IdeaBlade
Posted By: smi-mark
Subject: WPF/SL Prism + IdeaBlade
Date Posted: 29-Dec-2009 at 10:51am
Are there any plans to publish a tutorial / sample of a real world Prism project?

I know you have the Prism explorer, but that really is only a basic example.

I was thinking something like a really small scale version of the UFC Gym application, showing:

- Correct use of Entity Managers (Multiple?) with Prism
- Sharing code base between WPF/ SL
- Best practices for working with Prism and IdeaBlade

Or is this better left for the professional services team?

Thanks,

Mark



Replies:
Posted By: WardBell
Date Posted: 04-Jan-2010 at 6:08pm

All good ideas, Mark. I particularly like sharing code between WPF and SL.

Our greatest challenge at the moment is filling the gap between "4 Easy Steps" and "Prism Explorer". Relatively few folks are ready to go where you are headed. A mini-UFC Gym App is tempting but I'm not sure how many people are ready for that. I think the short-term prospects for what you ask are not high; we really have to help people walk before they run. Sorry.
 
We surely need a tutorial on Multiple EMs, a topic that is orthogonal to Prism. I used to have one of these in crude form somewhere. I'll try to find and resurrect it when I have a moment. If someone can describe an urgent need or wants my opinon on when and where to go with multiple EMs, that might get me going sooner [Note: if you HAVE such a scenario, please start up a new Forum topic on that.]
 
"Best Practices ..." hmmm. This is a wide-open category don't you think?  I believe Prism Explorer shows some good practices (and some questionable ones). Are there particular practice areas that you'd like to call out?
 
 


Posted By: smi-mark
Date Posted: 08-Jan-2010 at 9:14am
Hi Ward,

Thanks for the reply.

We are quite heavily invested in DevForce classic in our WinForms + ASP.Net projects. While DevForce Classic does make it MUCH simpler to write win/web apps by having one business model, the ability with WPF/SL to share many aspects of the presentation layer, is highly appealing.

When we start to make the move to these newer technologies, we want to make sure we do it right from the start.

I'm not too worried about Prism best practices, but more best ways to utilize DevForce with Prism.

In the Prism Explorer app, you have a Persistence Gateway and a Query Repository. In keeping with the Prism ideals, one would not directly use the Entity Manager in the View Model but rather abstract the queries needed to get the data into the 'Infrastructure' layer?

I suppose a lot of this will come, just by working with and getting used to the Prism architecture. I was just curious as to what your thoughts on it were.

I will post my multiple EM question in the Win Client / Object Persistence forum.

Thanks again Ward!

Mark




Posted By: WardBell
Date Posted: 09-Jan-2010 at 12:20am
Mark -
 
You wrote: " In keeping with the Prism ideals, one would not directly use the Entity Manager in the View Model but rather abstract the queries needed to get the data into the 'Infrastructure' layer?"
 
I cannot claim that this is a "Prism Ideal". Neither Prism nor PnP have taken a position on the Model component nor where to put persistence concerns.
 
I am a big proponent of keeping persistence details OUT of the view ... and the ViewModel/Presenter/Controller/PresentationManager or whatever part of a Separated Presentation pattern you prefer. I believe firmly in the Gateway and Repository abstractions ... as do many of my colleagues inside and outside IdeaBlade.
 
This perspective comes from our experience watching clients suffer as they scatter query and save logic all over the place. As the applications grow they lack consistency, lack exception handling, bloat with duplicated effort/code, exhibit limited opportunities for testing, ... the litany of trouble goes on.
 
The abstraction of persistence concerns is a UI recommendation independent of your client technology choice be it ASP, Windows Forms, WPF, Silverlight, the-next-great-thing.
 
As always, it is a matter of opinion ... strongly held by me in this case. I know you can succeed without following it. I just feel you'll be in better shape if you do follow it.



Print Page | Close Window