Kopiering af objekt
Hej.Jeg har lavet en metode, som tager et bruger-objekt som parameter. Denne metode gemmer et bruger-objekt i en database med mindre brugeren allerede findes i databasen. Hvis brugeren allerede findes i databasen, skal de informationer om brugeren, som ligger i databasen, returneres. Mit "problem" ligger i returnering af den information, som ligger i databasen. Jeg kan sagtens gemme en bruger, checke om brugeren allerede ligger i databasen og få returnet et bruger-objekt.
Lad os antage, at en "Hans Hansen" allerede eksisterer, men at hans adresse ifølge databasen er "Niels Nielsens vej 34". I det tilfælde skal jeg bruge informationen fra databasen.
Min kode:
Class Klasse1
User u = new User("Hans Hansen","Jens Jensens vej 41");
UserSaver us = new UserSaver();
us.Save(u);
Class UserSaver
public void Save(User u)
{
if(UserExistsInDB(u)==false)
SaveUser(u);
else
User tempUser = GetUser(u.Name);
u.Name = tempUser.Name;
u.Address = tempUser.Address
}
Dette virker fint.
Men i stedet for at kopiere hver enkelt egenskab fra tempUser vil jeg gerne kopiere hele det User-objekt, som GetUser-metoden returnerer. A la det her:
Class UserSaver
public void Save(User u)
{
if(UserExistsInDB(u)==false)
SaveUser(u);
else
u = GetUser(u.Name);
}
Men det virker ikke. Når jeg tilgår User-objektet i Klasse1-objektet, får jeg IKKE de informationer, som jeg hentede i databasen
