Gmail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
uNhAddIns.WPF initial draft
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  7 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
José F. Romaniello  
View profile  
 More options Jul 10, 12:47 pm
From: "José F. Romaniello" <jfromanie...@gmail.com>
Date: Fri, 10 Jul 2009 13:47:11 -0300
Local: Fri, Jul 10 2009 12:47 pm
Subject: uNhAddIns.WPF initial draft
I will start with uNhAddIns.WPF

The initial draft is here :
http://jfromaniello.blogspot.com/2009/07/unhaddinswpf-initial-thought...

Please feel free to share with me any comments or opinions.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fabio Maulo  
View profile  
 More options Jul 10, 1:23 pm
From: Fabio Maulo <fabioma...@gmail.com>
Date: Fri, 10 Jul 2009 14:23:27 -0300
Local: Fri, Jul 10 2009 1:23 pm
Subject: Re: [uNhAddIns] uNhAddIns.WPF initial draft

AFIK INotifyCollectionChanged does not need AOP, rigth ?
2009/7/10 "José F. Romaniello" <jfromanie...@gmail.com>

> I will start with uNhAddIns.WPF

> The initial draft is here :
> http://jfromaniello.blogspot.com/2009/07/unhaddinswpf-initial-thought...

> Please feel free to share with me any comments or opinions.

--
Fabio Maulo

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
José F. Romaniello  
View profile  
 More options Jul 10, 2:13 pm
From: "José F. Romaniello" <jfromanie...@gmail.com>
Date: Fri, 10 Jul 2009 15:13:40 -0300
Local: Fri, Jul 10 2009 2:13 pm
Subject: Re: [uNhAddIns] Re: uNhAddIns.WPF initial draft
No it doesn't, you are right.

Fabio Maulo escribió:


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
José F. Romaniello  
View profile  
 More options Jul 13, 4:09 pm
From: "José F. Romaniello" <jfromanie...@gmail.com>
Date: Mon, 13 Jul 2009 17:09:17 -0300
Local: Mon, Jul 13 2009 4:09 pm
Subject: Re: [uNhAddIns] Re: uNhAddIns.WPF initial draft
I'm looking for opinions about this subject..
EnhancedBytecode provider and the ReflectionOptimizer works great to
resolve entities with the IoC container. However, there are some cases
that is not enough.
For instance, when you add a custom interceptor, or an additional
interface the container will resolve as a "Proxy32132131232132", in such
cases nhibernate can't find a suitable persister.
 From here I will talk only for castle adapters.

My workarround will be to add a:
    -GetNameInterceptor (Method Call Interceptor - Castle)
    -INhibernateNamedEntity  (additional interface for this kind of
components)
    -EntityNameInterceptor (Nhibernate Interceptor)
    -Maybe an InterceptorSelector

This solution is extracted from
http://fabiomaulo.blogspot.com/2008/10/less-than-few-is-gof.html.

Thoughts?

Fabio Maulo escribió:


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Nicola  
View profile  
 More options Jul 14, 11:55 pm
From: Chris Nicola <chnic...@gmail.com>
Date: Tue, 14 Jul 2009 20:55:41 -0700 (PDT)
Local: Tues, Jul 14 2009 11:55 pm
Subject: Re: uNhAddIns.WPF initial draft
I would be very interested in using something like this, though I
wonder of some people will feel that introducing UI concerns in the
domain would be polluting the domain?

For my last project I used nHibernate with a WPF UI and it worked out
extremely well.  I ended up using MVVM and viewmodels which
encapsulated the data from my entities.  I had a ViewModelBase class
implementing some custom IEditiableObject logic and I used
INotifyProperty changed on the viewmodels, which is a standard
requirement for a viewmodel though only for a total undo, not N undo/
redo.

I did however make some early attempts at binding entities directly by
having them inherit a base class that implemented
INotifyPropertyChanged and adding PropertyChanged("PropertyName") to
all my properties.  I definitely see the potential creating nHibernate
entities that implement INotifyPropertyChanged and IEditableObject and
binding directly WPF UserControl views.

Another idea might be providing save/update and delete as ICommand
(s).  Also a sort of build in lazy-loading functionality for entities
with one-to-many relationships would be another.  I implemented my
lazy loading in the viewmodel so that when the collection was accessed
it would perform a query for it.  I find the trickiest thing about
nHibernate and WPF is determining the best way to manage your sessions
and where, having that handled in a sensible manner for a WPF app
would be a dream.

I'm looking forward to hearing some more of your ideas for WPF-aware
entities.  I can see a lot of potenitial for this.  I would be very
happy to contribute if I can in any way.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fabio Maulo  
View profile  
 More options Jul 15, 12:07 am
From: Fabio Maulo <fabioma...@gmail.com>
Date: Wed, 15 Jul 2009 01:07:01 -0300
Local: Wed, Jul 15 2009 12:07 am
Subject: Re: [uNhAddIns] Re: uNhAddIns.WPF initial draft

Chris, I think that the session management here, for José, is the
last preoccupation: CpBT.

2009/7/15 Chris Nicola <chnic...@gmail.com>

--
Fabio Maulo

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
José F. Romaniello  
View profile  
 More options Jul 15, 9:09 am
From: "José F. Romaniello" <jfromanie...@gmail.com>
Date: Wed, 15 Jul 2009 10:09:33 -0300
Local: Wed, Jul 15 2009 9:09 am
Subject: Re: [uNhAddIns] Re: uNhAddIns.WPF initial draft
Chris Nicola escribió:
> I would be very interested in using something like this, though I
> wonder of some people will feel that introducing UI concerns in the
> domain would be polluting the domain?

Yes, I know that and this is something that I am taking into account. I
want t show you two classes:

http://unhaddins.googlecode.com/svn/trunk/uNhAddIns/uNhAddIns.WPF.Tes...
http://unhaddins.googlecode.com/svn/trunk/uNhAddIns/uNhAddIns.WPF.Tes...

As you can see Album hasn't UI stuff. Entity is a class from unhaddins
that has some nice stuff but none of them related to UI.

> For my last project I used nHibernate with a WPF UI and it worked out
> extremely well.  I ended up using MVVM and viewmodels which
> encapsulated the data from my entities.  I had a ViewModelBase class
> implementing some custom IEditiableObject logic and I used
> INotifyProperty changed on the viewmodels, which is a standard
> requirement for a viewmodel though only for a total undo, not N undo/
> redo.

You could look the above sample, this will be supported. Note that also
you could add another interface to the proxy, lets say :
  Public interface IEditableAlbum : IEditableObject, IAlbum {}

> I did however make some early attempts at binding entities directly by
> having them inherit a base class that implemented
> INotifyPropertyChanged and adding PropertyChanged("PropertyName") to
> all my properties.  I definitely see the potential creating nHibernate
> entities that implement INotifyPropertyChanged and IEditableObject and
> binding directly WPF UserControl views.

INotifyPropertyChanged is another behavior, you could see my post on the
subject...
http://jfromaniello.blogspot.com/2009/07/inotifypropertychanged-as-ao...
It will work like IEditable. So you can plug:
public interface INotificableEditableAlbum : IEditableObject,
INotifyPropertyChanged, IAlbum

> Another idea might be providing save/update and delete as ICommand
> (s).  

I think that ICommand is related to View -> ViewModel comunication and has nothing to do with the Model itself.

> Also a sort of build in lazy-loading functionality for entities
> with one-to-many relationships would be another.  I implemented my
> lazy loading in the viewmodel so that when the collection was accessed
> it would perform a query for it.  

Is one of the reason that I will not "encapsulate" domain entities with
an extra model, let nhibernate deal with lazy loading and bind directly
to domain entities.

> I find the trickiest thing about
> nHibernate and WPF is determining the best way to manage your sessions
> and where, having that handled in a sensible manner for a WPF app
> would be a dream.

Like Fabio said; CpBT.
> I'm looking forward to hearing some more of your ideas for WPF-aware
> entities.  I can see a lot of potenitial for this.  I would be very
> happy to contribute if I can in any way.

Finally, thank you very mutch for your comments and the comment on my
blog, stay in touch with this project.
It is *very*, very, very important for me to read opinions.

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google