There are lots of ways to accomplish this.
The class of a member object can be in charge of loading an instance of itself via a static method. This is known as a factory method.
You can also code up a factory class or set of classes whose task it is to provide objects as you describe via factory methods.
Another popular pattern is the Abstract Factory - but your description of what you need doesn't match this pattern as far as it looks to me.
One important question that should be addressed is regarding your architecture: Are you remoting anything? Are objects being created on one machine and transported to another? That comes in to play because you will need to make sure your objects are serializable if you want to take advantage of the .NET marshal by value feature.
It might be useful for you to look up Rocky Lhotkas CSLA books. There are versions for C# and
VB.NET published by Apress (as well as the older VB6 books that were published by Wrox)
Woody Z
http://www.learntoprogramnow.com