Click here to Skip to main content
15,887,874 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
GeneralRe: Composed Business Objects Pin
Pawel Krakowiak30-Oct-07 22:11
Pawel Krakowiak30-Oct-07 22:11 
GeneralRe: Composed Business Objects Pin
led mike31-Oct-07 4:56
led mike31-Oct-07 4:56 
GeneralRe: Composed Business Objects Pin
Pawel Krakowiak31-Oct-07 5:08
Pawel Krakowiak31-Oct-07 5:08 
GeneralRe: Composed Business Objects Pin
led mike31-Oct-07 5:36
led mike31-Oct-07 5:36 
GeneralRe: Composed Business Objects Pin
Pawel Krakowiak31-Oct-07 7:54
Pawel Krakowiak31-Oct-07 7:54 
GeneralRe: Composed Business Objects Pin
Mark Churchill31-Oct-07 18:09
Mark Churchill31-Oct-07 18:09 
GeneralRe: Composed Business Objects Pin
Pawel Krakowiak1-Nov-07 4:16
Pawel Krakowiak1-Nov-07 4:16 
GeneralRe: Composed Business Objects Pin
Mark Churchill1-Nov-07 16:20
Mark Churchill1-Nov-07 16:20 
That circular dependancy seems to be correct behaviour to me. What is important is that the User and the Widget are the same instance every time around.

I would expect "somePerson == somePerson.Widgets[0].Owner".

This is similar to say a heirachy of Controls on a page. "someThing.Controls[0].Parent" could have you going in circles in a similar manner.

Diamond Binding will give you a Owner property on the Widget class of type Person, and an IList<widget> on the Person class. The actual implementation of IList depends on whether you have picked lazy-loading. You could also configure an IDictionary<x,widget> where x is a property of Widget that is unique per Person.

Think of it this way: Is it incorrect of me to ask "Who is your father's son's father's son's father?". It might be inefficient of me to ask that, but the query has an answer in your problem domain.

Mark Churchill
Director
Dunn & Churchill

GeneralRe: Composed Business Objects Pin
Pawel Krakowiak1-Nov-07 23:41
Pawel Krakowiak1-Nov-07 23:41 
GeneralRe: Composed Business Objects Pin
Mark Churchill2-Nov-07 1:50
Mark Churchill2-Nov-07 1:50 
GeneralRe: Composed Business Objects Pin
Pawel Krakowiak2-Nov-07 2:01
Pawel Krakowiak2-Nov-07 2:01 
GeneralRe: Composed Business Objects Pin
Mark Churchill2-Nov-07 2:57
Mark Churchill2-Nov-07 2:57 
GeneralRe: Composed Business Objects Pin
martin_hughes2-Nov-07 7:44
martin_hughes2-Nov-07 7:44 
GeneralRe: Composed Business Objects Pin
Mark Churchill2-Nov-07 16:39
Mark Churchill2-Nov-07 16:39 
GeneralRe: Composed Business Objects Pin
Pawel Krakowiak2-Nov-07 10:55
Pawel Krakowiak2-Nov-07 10:55 
GeneralRe: Composed Business Objects Pin
Mark Churchill2-Nov-07 16:24
Mark Churchill2-Nov-07 16:24 
GeneralSuggestions: File Layout Editor Pin
Brady Kelly28-Oct-07 22:45
Brady Kelly28-Oct-07 22:45 
QuestionInformation on .Net Architecture positions Pin
M LN Rao22-Oct-07 22:24
M LN Rao22-Oct-07 22:24 
AnswerRe: Information on .Net Architecture positions Pin
led mike23-Oct-07 9:19
led mike23-Oct-07 9:19 
AnswerRe: Information on .Net Architecture positions Pin
dojohansen29-Oct-07 1:12
dojohansen29-Oct-07 1:12 
QuestionApplication implementations level Add/Removing Controls Pin
prit_mahudha19-Oct-07 18:30
prit_mahudha19-Oct-07 18:30 
AnswerRe: Application implementations level Add/Removing Controls Pin
garyshort20-Oct-07 8:12
garyshort20-Oct-07 8:12 
GeneralRe: Application implementations level Add/Removing Controls Pin
prit_mahudha21-Oct-07 18:21
prit_mahudha21-Oct-07 18:21 
GeneralRe: Application implementations level Add/Removing Controls Pin
garyshort21-Oct-07 22:00
garyshort21-Oct-07 22:00 
GeneralRe: Application implementations level Add/Removing Controls Pin
prit_mahudha21-Oct-07 22:37
prit_mahudha21-Oct-07 22:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.