avoiding returning an object from within an object
<p>I have an object that looks like this:</p>

<pre><code>public class MyObject
{
    public int UserID {get;set;}
    public List&lt;SomeObjects&gt; {get;set;}
    public List&lt;SomeOtherObjects {get;set}
    public MyObject TheObjectForDB {get;set} //HERE: creating a new object

    public MyObject(int TheUserID)
    {
        this.UserID = TheUserID;
    }

    public LoadTheObjectFromDatabase()
    {
        MyQueries TheQueries = new MyQueries();
        TheObjectForDB = TheQueries.LoadFromDB(UserID) //HERE: object for DB work

        this.List&lt;SomeObjects&gt; = TheObjectForDB.List&lt;SomeObjects&gt;;
        this.List&lt;SomeOtherObjects&gt; = TheObjectForDB.List&lt;SomeOtherObjects&gt;;
    }
}
</code></pre>

<p>The database query essentially returns the same object type:</p>

<pre><code>LoadFromDB = from...
             select new MyObject(TheUserID){...}
</code></pre>

<p>How can I remove this redundancy where I need to instantiate another object of the same type to populate the initial object?</p>

<p>Thanks for your suggestions.</p>
