私はWCFサービスを取得し、Entity Frameworkを使用してデータベースと通信しています。
もちろん、エンティティ オブジェクトを返すことはできないので、WCF オブジェクトを作成しました。
このコードでは、EF を使用してデータを取得していますが、これはうまくいきます。しかし、for each ステートメントを使用すると、usersForClient は常に空に割り当てられます。これは最後に空のリストを返していますが、usersList はユーザーでいっぱいです。
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;
これは私の翻訳方法です:
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;
}