What's the best way to deal with Proxy<> objects

Hi,

I have a class User and a class Employer. A User in my application is necessarily an Employee of the company but not the other way around.
I chose to have an association between those classes.
So I have something like :
TEmployee= class(TObject)

[...]
[Association([TAssociationProp.Lazy],)]
[JoinColumn('User_ID')]
FCorrespondingUser: Proxy<TUser>;

Now the thing is when I want to insert an Employee object in my database, and more precisely when i want to set the attribute FCorrespondingUser.

I have something like :
var
Util : TUser;
Emp : TEmployee;
Manager : TObjectManager;
begin
Manager := TObjectManageR.Create(AureliusConnection);
Util := Manager.Find<TUser>(8);
[...]
Emp.CorrespondingUser := Util;
Here my Util is of type TUser, but the CorrespondingUser field is of type Proxy<TUser>
So i have an incompatible type issue.
What is the best way do deal with this ? Am i just supposed to cast my User to a Proxy<User>?

Thank you in advance,

Antoine

The indentation didn't work in my post, sorry for readability

Proxy types are used privately, and "regular classes" are used in public.

Have you checked this manual topic, it explains how to use proxy: http://www.tmssoftware.com/business/aurelius/doc/web/index.html?lazy-loading_associations.htm

Damn, I was doing like this, then I changed my properties for some reason, so it wasn't working anymore. I'ill just back to the way described in your link. Sorry for the dummy question