简体   繁体   中英

Object properties not getting modified

I got a WCF service and im using Entity Framework to communicate with the database.

Of course I cannot return my entity objects so I created WCF ones.

In this code Im getting data using EF, which comes good..but then when I use the for each statement, the usersForClient is always assigned empty. This is returning an empty list at the end, but usersList is full of users.

UserMethods userMethods = new UserMethods();
List<Users> usersList = userMethods.getUsersByLastName(pLastName);
List<wcfUser> usersListForClient = new List<wcfUser>();
wcfUser usersForClient = new wcfUser();

foreach (Users u in usersList)
{
    usersForClient = new wcfUser();
    usersForClient = TranslateServerUserToClientUser(u,usersForClient);
    usersListForClient.Add(usersForClient);
}

return usersListForClient;

This is my translate method :

private wcfUser TranslateServerUserToClientUser(Users serverSideUser, wcfUser clientSideUser)
{
    clientSideUser.Age = serverSideUser.Age;
    clientSideUser.Email = serverSideUser.Email;
    clientSideUser.DateJoined = serverSideUser.DateJoined;
    clientSideUser.LastName = serverSideUser.LastName;
    clientSideUser.Name = serverSideUser.Name;
    clientSideUser.UserName = serverSideUser.UserName;
    clientSideUser.IdUser = serverSideUser.IdUser;
    clientSideUser.DateLastLogin = serverSideUser.DateLastLogin;
    clientSideUser.ProfilePicture = serverSideUser.ProfilePicture;
    return clientSideUser;
}

Try putting the ref keyword in front of the wcfUser clientSideUser arg. It should look like

User TranslateServerUserToClientUser(Users serverSideUser, ref wcfUser clientSideUser)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM